在opencv-2.4.10 build期间设置PYTHON_LIBRARY

时间:2016-07-15 10:41:04

标签: python opencv centos

我在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。

1 个答案:

答案 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)才重要。