2016-07-15 42 views
0

我在CentOS6.7上,并且我正在构建opencv-2.4.10(我删除了2.4.9,因为我的python cv2软件包似乎并没有跟在opencv下面-2.4.9。当我在python中打印cv2 .__版本___时,它显示2.4.10,所以我想我应该将opencv升级到2.4.10,因为python cv2只是真正的C++ opencv的python包装,不管怎样..)在opencv-2.4.10期间设置PYTHON_LIBRARY构建

与python相关的唯一环境变量是PYTHON_PATH。

[email protected]:~/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: 
--  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环境,但为什么图书馆指着安装在我的系统(未anaconda2)蟒蛇?

我试图在cmake命令中传递python相关变量,如here所示,但它没有帮助。在CentOS上安装东西几乎都不是轻而易举,但我坚持使用CentOS。

回答

0

我成功地通过以下命令来构建opencv-2.4.10。

make clean; 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)设置的参数仅事项。