ubuntu16.04的环境下,编译成功C++代码,同时也安装好了opencv3.4
在运行时却出现error:
error while loading shared libraries: libopencv_imgcorecs.so.3.4:cannot open shared object file: No such file or directory
出现这个问题有两种,一个是未安装,另一个则是库的路径设置有问题。
由于我安装好opencv3.4,所以本文主要是解决共享库路径错误的问题 。
先查找libopencv_imgcorecs.so.3.4的库文件所在:
locate libopencv_imgcorecs.so.3.4
我第一次查找的时候发现在/usr/local/lib 下没有相关的库文件,于是重新编译安装opencv。(默认安装路径是/usr/local/lib)
为了以防万一,我选择直接进入安装路径去查找
cd /usr/local/lib
ls libopencv_imgcorecs.so
确定在/usr/local/lib下有 libopencv_imgcorecs.so.3.4,就将该路径写入环境变量
在 /etc/ld.so.conf.d下新建一个空白文档,命名为 opencv.conf
sudo gedit /etc/ld.so.conf.d/opencv.conf
在opencv.conf中写入安装路径
/usr/local/lib
最后关闭opencv.conf,并使之生效
sudo ldconfig
重新打开一个终端,运行程序,运行成功!
具体参考:https://stackoverflow.com/questions/12335848/opencv-program-compile-error-libopencv-core-so-2-4-cannot-open-shared-object-f
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)