什么“-sh:executable_path:找不到”的意思

我想运行一个可执行文件在Linux shell(OpenELEC的覆盆子pi)

OpenELEC:~ # /storage/fingi/usr/lib/autossh/autossh -sh: /storage/fingi/usr/lib/autossh/autossh: not found 

在这种情况下“未find”是什么意思?

如果我试图做ldd:

 OpenELEC:~ # ldd /storage/fingi/usr/lib/autossh/autossh /usr/bin/ldd: eval: line 1: /storage/fingi/usr/lib/autossh/autossh: not found 

如果我做文件:

 OpenELEC:~ # file /storage/fingi/usr/lib/autossh/autossh /storage/fingi/usr/lib/autossh/autossh: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=599207c47d75b62ede5f214f9322ae2a18643eb7, stripped 

文件types格式正确。 但它不会工作,也不会给更多的描述性错误信息。

由于openELEC的限制性很强,我从raspbmc安装中复制了autossh可执行文件。 我已经做了几个其他的可执行文件(屏幕,增强库等),他们工作正常。

任何人都可以build议可能是什么问题?

编辑1:按照build议,这是在工作的可执行文件(也从raspbmc复制)的文件命令的输出:

 OpenELEC:~ # file /storage/fingi/usr/bin/screen /storage/fingi/usr/bin/screen: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.26, BuildID[sha1]=5c58f047a25caa2c51a81d8285b4f314abc690e7, stripped 

Solutions Collecting From Web of "什么“-sh:executable_path:找不到”的意思"

在这种情况下“未找到”是什么意思?

这通常意味着可执行文件无法找到一个或多个(共享)库来满足其外部符号。
这通常发生在initramfs中没有存储库的情况下,或者缺少可执行文件需要的共享库。
如果可执行文件使用与运行时库不兼容的C库(例如,uClibc与glibc / eglibc)构建,也会发生这种情况。

strings executable | less strings executable | less是查看可执行文件所需的库和外部符号的最快捷方式。
要么
重新编译你的程序,并通过指定-static选项来使用静态链接。

如果文件没有随chmod +x /storage/fingi/usr/lib/autossh/autossh而改变,请检查文件是否已设置为使用ls -l可执行权限