gpt4 book ai didi

c++ - 如何使用版本名称将二进制文件与库链接

转载 作者:太空狗 更新时间:2023-10-29 11:37:42 24 4
gpt4 key购买 nike

让我用 g++ 编译一个 so 共享库,如下所示

g++ -shared -Wl,-soname,libtest.1.0 -o libtest.1.0.1 test.o

但是当我尝试将二进制文件与此库链接时,请编写以下内容:

g++ -o bin -L. -ltest -Wl,-rpath.

链接器试图在没有任何版本号的情况下搜索 libtest.so

如何将带有版本号的 lib 名称传递给 -l 链接器选项?

最佳答案

试试这个:

g++ -o bin -L. -Wl,-rpath=. -l:libtest.1.0.1

通常,至少在 Linux 上,使用 -lnamespace , ld将尝试查找名为 libnamespace.so 的文件或 libnamespace.a在其库搜索路径列表中链接,但使用 -l:namespace , ld将搜索名为 namespace 的文件在其库搜索路径列表中。

关于c++ - 如何使用版本名称将二进制文件与库链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23306588/

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