centos7.2 编译 运行,连接不到动态库问题

我用makefile可以编译通过,但运行出错

error while loading shared libraries: libavformat.so.57: cannot open shared object file: No such file or directory

 

然后 ldd 查看依赖动态库,显示找不到。。。

centos7.2 编译 运行,连接不到动态库问题_第1张图片

 

我的动态库都在本目录下

再然后搞了很久,之前从没遇到过这样的问题,

突然想到修改文件环境变量,即~/.bashrc文件,~/.basg_profile,或者/etc/profile文件,再或者 /etc/ld.so.conf(可能需要sudo)

方法一:

 export LD_LIBRARY_PATH=库所在路径:$LD_LIBRARY_PATH

export LD_LIBRARY_PATH

写入~/.bashrc文件,或者~/.basg_profile,或者/etc/profile文件,三个改一个文件即可

方法二:

或者将.写入 /etc/ld.so.conf文件

centos7.2 编译 运行,连接不到动态库问题_第2张图片

 

然后在文件最后一行添加本目录,也就是.问题解决,原来是文件中没有配置

保存后执行ldconfig 

 

ok~

再ldd 看一下

centos7.2 编译 运行,连接不到动态库问题_第3张图片

 

你可能感兴趣的:(c/c++,Linux,shell)