使用编译器和pi的工具链,我在编译过程中得到两个错误:
/opt/qtonpi/lib/gcc/armv5tel-qtonpi-linux-gnueabi/4.5.4/../../../../armv5tel-qtonpi-linux-gnueabi/bin/as: error while loading shared libraries: libz.so.1: cannot open sharedobject file: No
这是在Linux中。我有一个小工具的源代码,我要在一些新主机上安装它。我在新主机上编译代码,但它抱怨缺少一个库: ldd code.so
libpcre.so.0 => not found 新主机安装了libpcre.so.1。所以我的问题是:为什么它不针对.so.1库进行编译?为什么它专门寻找.so.0?我已经搜索了整个源代码和它includes的一些头文件,但没有对库的特定版本的引用。下面的文档提到了“程序,当它们在内部列出它们需要的共享库时”。这似乎是在朝着正确的方向前进,但
但是clementine和simplescreen记录器都使用apt安装,运行时抱怨Reading packagewhat I can see, there is a symbolic link:
lrwxrwxrwx 1 root root 25 Apr 10 2018 /usr/lib/x86_64-linux-gnu/libdouble-conversion.so -> libdo
我正在做一个项目,在这个项目中,我需要在Linux的同一应用程序中加载同一个库的两个版本。我发现,为了能够在没有任何库冲突问题的情况下成功地实现这一点,我必须使用自己的导出映射对库的两个版本进行符号版本控制。似乎如果运行的应用程序有这样的引用," name @@ nodename ",Linux中的动态加载器将只在nodename中查找名称,而不会在其他地方查找名称。这就是我得出的结论,因为这两个库都是符号版本。这