我将X.a
静态库包含到我的代码中,并且X.a
需要a.so
库,所以我是否只需要包含X.a
还是我的代码中都包含两个库?
我已尝试将唯一的X.a
用于我的代码,但未找到a.so
中使用的功能的定义。X.a
使用的功能。
我只需要包含X.a还是我的代码都需要包含两个库?
您没有在代码中“包含”库,而是在其中[。
链接到X.a
时,链接器将库的已使用部分复制到可执行文件中。[当您链接到a.so
时,链接器会指出运行时需要a.so
,并且(如果您使用版本控制的符号)请注意,在运行时必须存在a.so
中的哪些符号版本,但是没有? t将a.so
中的任何代码复制到可执行文件中。但是,链接时间仍然需要a.so
。
[没有a.so
的情况下有链接可执行文件的方法,但是最好由专家来决定(这种方法有太多可能的陷阱了。]