为什么链接到冗余动态库

时间:2016-08-28 14:55:36

标签: linux

在linux(kylin)中,我创建了一个链接到某些.so的进程(pro)。在某些机器上,它运行良好。但它无法在一台机器上运行。我使用ldd检查进程, ldd亲 它链接到许多冗余的.so。冗余的.so是由其他程序员编写的。

我设置了系统变量LD_LIBRARY_PATH,确保它只包含包含我需要的路径。然后编译无法通过。(我也在其他机器上尝试这个,编译好。)

我真的很困惑为什么我的代码与其他程序员代码混在一起。

我是第一次提问,感谢所有查看问题的人。

1 个答案:

答案 0 :(得分:0)

今天,我解决了这个问题。

首先,我写了一个“helloworld”程序,它仍然链接到其他动态库。例如“xxx.so未找到,/usr/lib64/crti.o需要它”

然后,我检查文件'crti.o',它真的被其他程序员修改过。它链接了很多动态库。

我用其他机器替换这个文件后,一切运行良好。