赞
踩
ARM 开发板运行程序:error while loading shared libraries: …/…/lib/libopencv_core.so: cannot open shared object file: No such file or directory的解决
好不容易交叉编译好opencv和qt,且已经将需要的库都移植到arm板(已搭建最小系统板)上,将编译好的程序拷到板子上运行时,出现:error while loading shared libraries: …/…/lib/libopencv_core.so: cannot open shared object file: No such file or directory
参考其他博客,明白问题的所在是opencv的库没有配置好,
修改/etc/ld.so.conf文件,有些系统没有这个文件,而是/etc/id.so.conf.d目录,这时在目录下新建一个opencv.conf文件,在文件末尾添加:
yourOpencvPath/lib
比如我的就是/usr/local/arm/opencv-arm/lib。
然后在终端下:
ldconfig
保存退出,然后修改/etc/profile,末尾添加:
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
保存退出,终端下:
source /etc/profile
涉及到权限问题的话,在前面加sudo。然后就应该可以了,但是我的不可以,运行后还是出现同样的问题。
2.我的方法
其实很简单,既然系统在…/…/lib下找不到文件,那提示缺少哪个.so文件,就把它复制到系统的/lib路径下。
例如,在yourOpencvPath/lib路径下,终端:
cp libopencv_core.so /lib
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。