Caffe的安裝我主要參考的是這篇博客
http://blog.csdn.net/ubunfans/article/details/47724341
按照他的方法我很快就安好了cuda8(為后面安裝了十遍opencv的杯具埋下了伏筆)
然后萌萌的我毫不猶豫地運行了博主提供的腳本,(一鍵)安裝opencv
后面的劇情就很好猜了,當然是gg啊...連續gg了兩次之后我開始去網上找原因了...opencv的編譯真的慢,而且為什么100m不到的源碼可以編譯出好幾個g的文件...
安裝opencv的腳本網上似乎挺多的,腳本里面寫的東西也挺好懂的。
出於某個我已經忘記了的原因,我最后用的是http://blog.csdn.net/xuezhisdc/article/details/48691797
這篇博客里講的方法安裝成功的opencv,不過第一個博主提供的shell腳本應該也沒問題..
我選擇的是opencv2.4.11。
一共遇到了三個坑點:
1 這個問題網上資料很多,報錯內容好像是 nvcc fatal : Unsupported gpu architecture 'compute_11'
不過產生這個的原因挺多的
有的是在 CMake的選項中聲明 -D CMAKE_BUILD_TYPE=DEBUG
有的是在 CMake的選項中聲明 -D CUDA_GENERATION=Kepler
不過我最后是添上了 -D CUDA_ARCH_BIN=3.2 -D CUDA_ARCH_PTX=3.2才成功通過第一關的...
以下為我的CMake:
sudo cmake -D CMAKE_BUILD_TYPE=Release -D BUILD_TIFF=ON -D
CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON
-D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON
-D WITH_QT=ON -D WITH_OPENGL=ON CUDA_GENERATION=Auto -D BUILD_NEW_PYTHON_SUPPORT=ON -D CUDA_ARCH_BIN=3.2 -D CUDA_ARCH_PTX=3.2 ..
2
/opencv/opencv-2.4.11/modules/gpu/src/graphcuts.cpp:274:146: error: ‘nppiGraphcut8_32f8u’ was not declared in this scope
nsp.step), sznpp, labels.ptr<Npp8u>(), static_cast<int>(labels.step), state) );
這個地方是cuda8和opencv2.4.9.11不兼容導致的...
你需要在graphcuts.cpp中修改一行代碼
參照下面這個鏈接修正即可
https://github.com/opencv/opencv/pull/6510
3
這個錯很奇怪,搜遍全網也只找到一個和我遇到一樣問題的人...而且那個人說他再其它機器上重裝又沒有問題...
報錯內容記不清了,,說的好像是clamdblas_runtime.cpp文件被截斷...
然后我上github看了下opencv的源碼,發現和我的代碼並沒有區別...最后我把clamdblas_runtime.cpp給清空了,然后從github上把代碼復制了下來,然后粘貼了進去...
然后就好了...