Makefile:160: recipe for target 'all' failed (Ubuntu 16.06 + Opencv3.2)解决办法
前言
之前一直用的opencv 好好的,今天安裝了anaconda之后,python中的opencv不能用了,即便是拷貝cv2.so之后也是不能用,問題如下:
根本原因
安裝anaconda之后,很多默認的編譯器都變成了anaconda自帶的了,比如python和gcc等。那么系統中的python安裝的東西自然是用不了的,剛開始沒發現這個問題,一怒之下就把opencv給卸載了,當發現這個問題的時候,已經悔之晚矣,無奈重新安裝。
注:opencv編譯失敗之后,其前面肯定有失敗報錯的地方,也就是解決問題和核心了,如上圖中最后報錯“Makefile:160: recipe for target ‘all’ failed”無法鎖定問題在那兒,往上翻番看就能發現問題的原因,在繼續解決就行了。
解決方案
通過一股查找之后,在博主(?
https://stackoverflow.com/questions/40322301/compile-opencv-3-on-ubuntu-16-04-linking-error-usr-lib-x86-64-linux-gnu-libsox)中找到答案。
兩種方式:
第一種方法:
增加 -D WITH_OPENMP=ON第二種方法
從系統變量中刪除Anaconda路徑 sudo gedit ~/.bashrc注釋掉如下兩行
#export PATH="/home/lab/SOFT_APP/Anaconda2/bin:$PATH" #export PATH="/home/lab/SOFT_APP/Anaconda2/bin:$PATH"立即生效:
source ~/.bashrc?
此時在編譯即可。
Anaconda該怎么使用
有些同學可能會問刪除了Anaconda的環境變量之后怎么用,其實直接在Anaconda的目錄下就可以使用:
bin/conda info -e source bin/activate tf_v0.12.0rc0 source bin/deactivate同樣可以使用
?
另:
添加cmake參數:
-DENABLE_PRECOMPILED_HEADERS=OFF
-DBUILD_TESTS=OFF
轉載于:https://www.cnblogs.com/sddai/p/10232515.html
總結
以上是生活随笔為你收集整理的Makefile:160: recipe for target 'all' failed (Ubuntu 16.06 + Opencv3.2)解决办法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 表迁移工具的选型-复制ibd的方法-传输
- 下一篇: MySQL—异常处理