gpt4 book ai didi

linux - 使用 -rpath 加载 QLibrary

转载 作者:太空宇宙 更新时间:2023-11-04 12:35:53 25 4
gpt4 key购买 nike

我有一个动态加载 B.so 的可执行文件 A,而 B.so 又依赖于 C.so。 C.so 与 A 和 B 不在同一个文件夹中。

我正在尝试使用 QLibrary.load() 加载 B.so 但未能这样做,因为 QLibrary.errorString() 返回库 C.so 无法加载。

QLibrary 文档说可以使用 LD_LIBRARY_PATH,但我不想这样做。我在链接 B.so 时使用 -Wl,-rpath,/path/to/C/,但它对动态加载没有帮助。

关于如何在不使用 LD_LIBRARY_PATH 的情况下加载 B.so 有什么建议吗?我可以让它与 -rpath 一起使用吗?

最佳答案

rpath 应该指向一个目录而不是共享目标文件,尝试 -Wl,-rpath,/path/to/ 而不是 -Wl,-rpath,/path/to/C.so

关于linux - 使用 -rpath 加载 QLibrary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41857880/

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