日期:2014-05-16  浏览次数:20535 次

交叉编译的 app 放到目标板上 运行 -/bin/sh: XXX: not found
用 arm-linux-readelf 查看了程序依赖的库是 libc.so.6 我把库及其链接都复制到了 目标板的 /usr/lib
目录下了

并且把vim /etc/ld.so.config,在其中加入了新的libs的目录 
也用“ldconfig -f etc/ld.so.conf -C etc/ld.so.cache"生成一个新的ld.so.cache 

并且应用程序和内核编译用的是同一套工具链

我也chmod 了

但是一运行就提示-/bin/sh: XXX: not found 这应该连运行都没法运行,
这个应该不是库的问题,是一个不能识别的二进制文件吧?

但是我用静态编译 -static 就能执行了

这个问题改怎么解决呢?


------解决方案--------------------
没有找到可执行程序,不是库的问题。

比如ls写错成llss,找不到命令来执行。
------解决方案--------------------
会不会是你执行程序的脚本写的有问题,比如在windows上编辑的,有时候会带换行符之类的。你手动执行试试?或者你在linux下,再查看一遍脚本?