如何确定是什么导致Solaris上的符号(延迟)解析?

时间:2020-09-11 21:12:12

标签: solaris ld dynamic-linking

我有一个.so,由于缺少对'stpcpy'的引用,因此在某些情况下无法加载。我相信问题在于它是在Solaris 11上构建的,而它却是在Solaris 10上运行的,但是奇怪的是,它不会总是加载失败,具体取决于加载的内容。

我尝试使用LD_DEBUG,发现在成功加载的情况下,它甚至没有 try 来解析stpcpy(并且dlopen()失败了)。我唯一可能引起这种情况的猜测是,符号被延迟解析,并且某些运行时条件影响全局对象构造函数或某些东西,而后者可能需要调用该函数。

我想弄清楚为什么会存在这种差异,因此,假设我是对的,理想情况下,我想查看一个堆栈跟踪,以了解应用程序最终如何尝试调用stpcpy。有一些(相对容易)的方法吗?

0 个答案:

没有答案