链接到静态库时对函数的未定义引用

问题描述 投票:0回答:1

我将X.a静态库包含到我的代码中,并且X.a需要a.so库,所以我是否只需要包含X.a还是我的代码中都包含两个库?

我已尝试将唯一的X.a用于我的代码,但未找到a.so中使用的功能的定义。X.a使用的功能。

c static-libraries static-linking dynamic-linking dynamic-library
1个回答
0
投票

我只需要包含X.a还是我的代码都需要包含两个库?

您没有在代码中“包含”库,而是在其中[

链接到X.a时,链接器将库的已使用部分复制到可执行文件中。

[当您链接到a.so时,链接器会指出运行时需要a.so,并且(如果您使用版本控制的符号)请注意,在运行时必须存在a.so中的哪些符号版本,但是没有? t将a.so中的任何代码复制到可执行文件中。但是,链接时间仍然需要a.so

[没有a.so的情况下有链接可执行文件的方法,但是最好由专家来决定(这种方法有太多可能的陷阱了。]

© www.soinside.com 2019 - 2024. All rights reserved.