动态加载程序如何使用正确的arch版本加载库

时间:2017-05-21 08:04:50

标签: linux loader

对于基于aarch64的系统,如果我在不同的路径中同时提供了arm和arm64版本的库libtest.so,并将路径添加到/etc/ld.so.conf中。

我想知道应用程序是否依赖于这个库,加载器如何找到正确版本的libtest.so?

基本上,由于两个路径都存在于ld.so.cache中,因此加载器会根据应用程序的拱门进行选择吗? 或者在为不同的arch添加路径到ld.so.conf时是否需要规则?

我想知道它是如何运作的,非常感谢任何信息。

1 个答案:

答案 0 :(得分:0)

我只是在系统上测试它,ldconfig -p输出两个库但指向不同的地方,然后ld将使用与目标的拱形匹配的一个库。

这样ld将与arch匹配lib,对吗?

如果出现问题,请纠正我。