之前一直用的opencv 好好的,今天安装了anaconda之后,python中的opencv不能用了,即便是拷贝cv2.so之后也是不能用,问题如下:
根本原因安装anaconda之后,很多默认的编译器都变成了anaconda自带的了,比如python和gcc等。那么系统中的python安装的东西自然是用不了的,刚开始没发现这个问题,一怒之下就把opencv给卸载了,当发现这个问题的时候,已经悔之晚矣,无奈重新安装。
注:opencv编译失败之后,其前面肯定有失败报错的地方,也就是解决问题和核心了,如上图中最后报错“Makefile:160: recipe for target ‘all’ failed”无法锁定问题在那儿,往上翻番看就能发现问题的原因,在继续解决就行了。
解决方案通过一股查找之后,找到答案。
两种方式:
第一种方法:
增加 -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
同样可以使用