操作系统:AIX 5.3。 编译器:xlC_r
构建系统是:“Unix Makefiles”
我们的应用程序使用几个静态( .a)库和几个共享( .so)库。 构建过程成功通过(我们确实得到了一些重复的符号警告)。 但是当我们尝试执行时,我们会得到符号缺失错误。
注意:我们没有使用dl在运行时加载共享库。
我们错过了什么吗?
为什么我们通过链接阶段仍然会错过符号?
答案 0 :(得分:2)
动态符号会在链接时检查,因此如果您在执行时遗漏了某些内容,那么任何动态库或其依赖项可能都不在正确的路径中。
答案 1 :(得分:0)
共享库可能依赖于在运行时无法找到的其他共享库。
确保您的环境设置正确,以便dlopen()知道在哪里查找共享库。