当前位置: 技术问答>linux和unix
问个动态库加载的问题
来源: 互联网 发布时间:2016-07-18
本文导语: 我有2个动态库liba.so, libb.so liba.so依赖于libb.so 我现在程序运行时加载liba.so(通过dlopen加载)。 但是libb.so不在linker的动态库路径中(linker的查找路径是死的,不支持LD_LIBRARY_PATH)。 有什么办法可以解决这个问题吗?我...
我有2个动态库liba.so, libb.so
liba.so依赖于libb.so
我现在程序运行时加载liba.so(通过dlopen加载)。
但是libb.so不在linker的动态库路径中(linker的查找路径是死的,不支持LD_LIBRARY_PATH)。
有什么办法可以解决这个问题吗?我想可不可以在加载liba.so时先读取libb.so的elf内容,
手动加载其全部符号?不知道有没有解决的办法?
liba.so依赖于libb.so
我现在程序运行时加载liba.so(通过dlopen加载)。
但是libb.so不在linker的动态库路径中(linker的查找路径是死的,不支持LD_LIBRARY_PATH)。
有什么办法可以解决这个问题吗?我想可不可以在加载liba.so时先读取libb.so的elf内容,
手动加载其全部符号?不知道有没有解决的办法?
|
export LD_LIBRARY_PATH=...加上路径就可以了吧
|
在你的程序执行目录做个符号链接到.so
|
可以把你的.so拷贝到/usr/lib下面去,或者在你编译的时候使用-L指定你的动态库
|
LD_PRELOAD 的方法行不行 ?