我一直在尝试使用virtualenv从pyimagesearch.com中遵循opencv安装步骤。除了包路径之外,一切都很好:它应该是/Users/JLee/Envs/cv/lib/python2.7/site-packages
,但它被配置为lib/python2.7/site-packages
在Python中,import cv2
在全局设置中工作良好,但在"cv"虚拟环境中不起作用。
在遵循网站上的步骤时,我首先没有安装virtualenv,然后意识到我还没有安装它,所以我稍后安装了它,并再次遵循这些步骤。这会是个问题吗?
Python 2:
-- Interpreter: /Users/JLee/Envs/cv/bin/python2.7 (ver 2.7.10)
-- Libraries: /usr/lib/libpython2.7.dylib (ver 2.7.10)
-- numpy: /Users/JLee/Envs/cv/lib/python2.7/site-packages/numpy/core/include (ver 1.11.1)
-- packages path: lib/python2.7/site-packages
这是cmake配置构建的代码:
cmake -D CMAKE_BUILD_TYPE=RELEASE
-D CMAKE_INSTALL_PREFIX=/usr/local
-D PYTHON2_PACKAGES_PATH=/Users/JLee/Envs/cv/lib/python2.7/site-packages
-D PYTHON2_LIBRARY=/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/bin
-D PYTHON2_INCLUDE_DIR=/usr/local/Frameworks/Python.framework/Headers
-D INSTALL_C_EXAMPLES=OFF -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON
-D OPENCV_EXTRA_MODULES_PATH=/Users/JLee/Developer/opencv_project/opencv_contrib/modules ..
感谢您的提前帮助!
由于某些原因,CMake似乎没有自动为您的虚拟环境确定site-packages
目录。不过这不是问题,因为您所需要做的只是cv2.so
文件中的符号链接。
在磁盘上找到你的cv2.so
文件(根据你的输出,它似乎在lib/python2.7/site-packages
中),然后符号链接到你的Python虚拟环境site-packages
目录。从那时起,一切都将按预期进行。