gpt4 book ai didi

c - 嵌入共享库的绝对路径

转载 作者:行者123 更新时间:2023-12-04 11:27:33 25 4
gpt4 key购买 nike

使用供应商提供的交叉编译工具链(显然是OpenEmbedded派生工具),我无法将绝对路径嵌入到第三方(开放源代码,内部编译)库中。使用以下gcc命令行:

arm-linux-gcc test_connect_send.o gprs_connect.o \
/package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libgprs_stuff.so \
/package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libpower_supply_stuff.so \
/package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libgsm_stuff.so \
/package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libtcp_stuff.so \
/package/host/aspl.es/vortex-1.1.0/lib/libvortex-1.1.so \
/package/host/aspl.es/axl-0.5.6/lib/libaxl.so.0 -o test_connect_send


objdump说:

Dynamic Section:
NEEDED /package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libgprs_stuff.so
NEEDED /package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libpower_supply_stuff.so
NEEDED /package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libgsm_stuff.so
NEEDED /package/host/myvendor.com/API-R-2.0.0/Release/Libraries/libtcp_stuff.so
NEEDED libvortex-1.1.so.0
NEEDED libaxl.so.0
NEEDED libgcc_s.so.1
NEEDED libc.so.6


请注意,我的供应商的库如何具有其完整路径,而aspl却没有。另外,请注意嵌入的名称与我在命令行上指定的名称有何不同。我想知道为什么(谁弄乱了我的道路),以及如何解决它。

附注:我了解RPATH,这不是我要的答案

最佳答案

我的猜测是供应商提供的库会将SONAME设置为完整的安装路径。

关于c - 嵌入共享库的绝对路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1124809/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com