在安装cmake之后在pythonanywhere上导入OpenCv

时间:2020-06-26 10:38:32

标签: python bash cmake pythonanywhere opencv-contrib

我正在尝试将我的Web应用程序部署在pythonanywhere上,我需要带有cotrib模块的OpenCv。因此,我使用以下cmake配置对其进行了编译:

cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_CUDA=OFF \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib/modules \
-D BUILD_EXAMPLES=ON \
-D BUILD_opencv_python3=yes ..

由于我无法在pythonanywhere bash上扎根,因此我使用DESTDIR安装了OpenCv:

make install DESTDIR=/home/pathToInstallationDir...

安装没有问题,但是python控制台尚未import cv2。感谢此答案的第7点:Why cv2.so missing after opencv installed?我导出了python路径,现在它尝试使用以下错误日志尝试访问import cv2

     File "<stdin>", line 1, in <module>
        File "/home/pathToInstallationDir.../usr/local/lib/python3.6/site-packages/cv2/__init__.py", line 96, in <module>
        bootstrap()
        File "/home/spir/pathToInstallationDir.../usr/local/lib/python3.6/site-packages/cv2/__init__.py", line 86, in bootstrap
        import cv2
    ImportError: libopencv_hdf.so.4.4: cannot open shared object file: No such file or directory

所以我猜想__init__.py模块中指定了一个环境变量,python解释器遵循该变量来找到lib中的所有.so,此刻是错误的,因为我寻找了{{1 }},并应位于lib中。

我正确吗?如果是,则哪个变量是隐式变量,该如何更改?

如果不是,那该问题的正确诊断是什么?

请帮助。

0 个答案:

没有答案