在linux系统中,如果程序需要加载动态库,它会按照一定的顺序(优先级)去查找:
优先级(1:最高) 路径
1 编译时指定运行时链接的动态库的路径(qt 在QMAKE_CXXFLAGS 后添加-Wl,rpath=. 指定当前目录为运行时指定的动态库)
2 环境变量LD_LIBRARY_PATH所指定的路径
3 /etc/ld.so.conf文件中指定的路径,修改后运行ldconfig命令生效
4 系统默认动态库路径:/lib/
5 系统默认动态库路径:/usr/lib/
环境变量LIBRARY_PATH可以指定编译时搜索动态库的路径; 环境变量LD_LIBRARY_PATH可以指定程序运行时动态库搜索和加载的路径;