Linux 打包共享库

Linux 打包共享库,linux,qt,packaging,Linux,Qt,Packaging,我交叉编译了一个在ARM平台上运行的简单的hello world Linux应用程序。如果我使用静态链接,应用程序在目标上运行良好 但是,当我使用共享库使用动态链接时,我知道我需要将依赖库放在目标上(例如:libc.so.6和libgcc_.so.1)。 我已将env.variableLD_LIBRARY\u PATH设置为:/usr/local/lib,在此处复制了.so文件 现在,当我在目标上运行应用程序时,我得到 -sh: ./a.out: not found 。。。每一次。我想问一下我

我交叉编译了一个在ARM平台上运行的简单的hello world Linux应用程序。如果我使用静态链接,应用程序在目标上运行良好

但是,当我使用共享库使用动态链接时,我知道我需要将依赖库放在目标上(例如:
libc.so.6
libgcc_.so.1
)。 我已将env.variable
LD_LIBRARY\u PATH
设置为
:/usr/local/lib
,在此处复制了
.so
文件

现在,当我在目标上运行应用程序时,我得到

-sh: ./a.out: not found

。。。每一次。我想问一下我是否做错了什么,或者有没有一种简单的方法可以做到这一点?

您可能缺少动态链接器,通常名为ld linux.so.2。但请注意,ld linux.so.2检查的是
ld_LIBRARY_PATH
,它的路径是二进制硬编码的,这意味着您不能将它放在任何需要的地方,例如/usr/local/lib/中。运行
readelf-p.interp./yourprogram
,或
objdump-s-j.interp./yourprogram
,看看它说了什么。非常感谢。你好,我已经将一个应用程序移植到使用共享库的ARM-LINUX平台。应用程序开始执行,但调用方法失败并退出。由于应用程序在x86上运行良好,因此我假设问题出在目标上。由于应用程序statts执行,我假设目标上存在所有共享库。你对如何解决/调试这个问题有什么建议吗?提前谢谢你,Praveen