我有 2 个静态库,
libalgha.a
具有 2 个功能:func1()
和func2()
和
libbeta.a
具有 2 个功能:func3()
和func4()
我有 1 个可执行文件 ( mytest
) 与这 2 个库链接。可执行文件仅调用func1()
和func3()
。因此,据我了解,链接器只会将这两个函数的符号放入可执行文件中。
可执行文件在运行时加载dlopen()
一个共享库 ( libgamma.so
),并且此共享库使用func2()
来自的函数libalgha.a
。运行时mytest
出现错误:
符号 func2:未找到引用的符号
由于 Solaris 32/64 位问题,我无法将其包含libalgha.a
在内。libgamma.so
那么如何mytest
与 的所有符号链接libalgha.a
?