linux qt 编译时与运行时缺乏共享库

1.编译时,在.pro文件添加

LIBS += -L /usr/local/lib -levent -levent_core -levent_extra -levent_pthreads
/usr/local/lib 为lib库所在路径
-levent -levent_core -levent_extra -levent_pthreads为需要链接的库

2.运行时

缺少动态连接库.so--cannot open shared object file: No such file or directory

总结下来主要有3种方法:

1. 用ln将需要的so文件链接到/usr/lib或者/lib这两个默认的目录下边

ln -s /where/you/install/lib/*.so /usr/lib
sudo ldconfig

// 用来刷新共享库缓存 ldconfig是一个动态链接库管理命令,其目的为了让动态链接库为系统所共享,当用户安装了一个新的动态链接库时,就需要手工运行这个命令.

// 详细请见::Linux的ldconfig命令和ldd命令用法

2.修改LD_LIBRARY_PATH

export LD_LIBRARY_PATH=/where/you/install/lib:$LD_LIBRARY_PATH
sudo ldconfig

3.修改/etc/ld.so.conf,然后刷新

vim /etc/ld.so.conf

add /where/you/install/lib

sudo ldconfig
 

建议三篇一起看

https://www.cnblogs.com/liushui-sky/p/13521898.html

https://www.cnblogs.com/liushui-sky/p/13521525.html 

 https://www.cnblogs.com/liushui-sky/p/13521639.html

 
参考自:https://www.jianshu.com/p/eea54c5a75bf
原文地址:https://www.cnblogs.com/liushui-sky/p/13521525.html