記一次opencv安裝踩坑旅程

系統ubuntu14.04,自帶python2.7.6,之前採用sudo apt-get install python-opencv 安裝了cv2,現在要裝cv3.1.0 。

流程差不多就是各大安裝教程說的:http://www.zhimengzhe.com/linux/49518.html

譬如:

/opt$ git clone https://github.com/Itseez/opencv.git
/opt$ git clone https://github.com/Itseez/opencv_contrib.git
/opt$ cd opencv
/opt/opencv$ git checkout 3.1.0
/opt/opencv$ cd /opt/opencv_contrib
/opt/opencv_contrib$ git checkout 3.1.0
然後

cd /path/to/opencv  && mkdir build && cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/home/abc/develop/310/opencv310bin -D INSTALL_PYTHON_EXAMPLES=OFF -D INSTALL_C_EXAMPLES=OFF -D PYTHON_EXECUTABLE=/usr/include/python2.7 -D BUILD_EXAMPLES=OFF -D WITH_GTK=OFF -D WITH_CUDA=ON -D PYTHON2_INCLUDE_DIR=/usr/include/python2.7 -D PYTHON2_EXECUTABLE=/usr/bin/python ..

解釋一下,CMAKE_INSTALL_PREFIX是指定安裝路徑的,默認裝在系統裏/usr/local。


EXAMPLE都不裝了,因爲example需要各種庫支持,增加了安裝困難,要用的時候再單獨編譯好了。


PYTHON_EXECUTABLE是指定安裝opencv的python支持時所採用的pythonInterpreter,並不是opencv安裝後的python版調用!!這裏如果沒有指定好,輸出會提示 Could NOT find PythonInterp: Found unsuitable version "1.4", but required is at least "2.7" (found /home/abc/develop/310/opencvbin),然後python2 python3的Interpreter爲No,也就不會生成cv2.so cv.py這種python需要的文件。。括號的found路徑就是你指定的python_executable的路徑,我這裏指定了個空目錄,然後make的時候沒有成功產生cv.so。。。EXECUTABLE指定一個就行,除非要同時支持python2 和3。


網上有一些提到cmake 要加 -D CUDA_ARCH_BIN=3.1.0的,別亂來,opencv會自己從所有可能的cuda_arch中匹配,如果指定了,而系統又沒有這個版本的話,會悲劇。


需要注意cuda版本和驅動需要一致,一臺曾經裝了7.0,升級8.0前沒有卸載乾淨,以後裝opencv就遇到下面的問題:

/usr/bin/ld: warning: libcudart.so.7.0, needed by /usr/local/lib/libopencv_core.so, not found (try using -rpath or -rpath-link)







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章