我在CentOS6.7上,我正在构建opencv-2.4.10(我删除了2.4.9,因为我的python cv2软件包似乎没有在opencv-2.4下面。 9.当我在python中打印cv2 .__ version__时,它显示2.4.10所以我认为我应该将opencv升级到2.4.10,因为python cv2只是真正的c ++ opencv的python包装。无论如何..)
与python相关的唯一环境变量是PYTHON_PATH。
ckim@stph45:~/Downloads/opencv-2.4.10/build] echo $PYTHON_PATH
/home/ckim/anaconda2/lib/python2.7/site-packages/
在/home/ckim/Downloads/opencv-2.4.10/build目录下,我做了
cmake -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_EXAMPLES=ON -D
CUDA_GENERATION=Auto ..
我可以看到结果配置消息,其中一些与python相关的消息对我来说似乎很奇怪。见下文。
....
-- Python:
-- Interpreter: /home/ckim/anaconda2/bin/python2 (ver 2.7.12)
-- Libraries: /usr/local/lib/libpython2.7.so
-- numpy: /home/ckim/anaconda2/lib/python2.7/site-packages/numpy/core/include (ver 1.10.2)
-- packages path: lib/python2.7/site-packages
....
解释器和numpy正确指向我的anaconda2 python环境,但是为什么库指向安装在我的系统中的python(而不是anaconda2)?
我尝试在cmake命令中按照指示here传递与python相关的变量,但它没有帮助。在CentOS上安装一些东西并不是一件轻而易举的事,但我仍然坚持使用CentOS。
答案 0 :(得分:0)
我通过以下命令成功构建了opencv-2.4.10。
清洁; cmake -D CMAKE_INSTALL_PREFIX = / usr / local -D BUILD_EXAMPLES = ON -D CUDA_GENERATION = Auto -D PYTHON_INCLUDE_DIR = / home / ckim / anaconda2 / include / python2.7 / PYTHON_LIBRARY = / home / ckim / anaconda2 / lib / libpython2.7 .so .. | &安培; tee log.cmake make -j8 | &安培; tee log.make
现在安装了opencv-2.4.10,cv2也是2.4.10 当我查看log.cmake时,我仍然看到
Libraries: /usr/local/lib/libpython2.7.so (ver 2.7.12)
但是无论如何编译都是成功的,所以我似乎可以忽略这个配置消息,而且我在命令行中设置的参数(PYTHON_LIBRARY)才重要。