Bash 在 10.04 中可以正常执行,但在 11.10 或 12.04 中却不行

Bash 在 10.04 中可以正常执行,但在 11.10 或 12.04 中却不行

第一次发帖,但我经常来这里,这是我第一次没有找到已经发布的答案,所以我注册了。

我有一个简单的二进制可执行文件,可以在 10.04 中正常运行。

./buds
Opening serial device '/dev/ttyS0' (19200,8N1)...OK
Creating PTY device...OK
Setting PTY device '/dev/pts/1' (115200,8N1)...OK
Startup complete, waiting for commands...

但在 11.10 Live CD 或 VirtualBox 下的 12.04 中却不行:

cd Test
ls
buds
./buds
bash: ./buds: No such file or directory

我已确保 buds 是可执行的,并且我有权限:

chris@chris-VirtualBox:~$ ls -l buds

-rwxr-xr-x 1 chris chris 26240 2010年6月22日 buds

file buds 
buds: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, BuildID[sha1]=0xf8f0b93813114695c72203bdc1bcf47163553eab, stripped 

ldd buds
not a dynamic executable 

哎呀!

答案1

您的二进制文件似乎是为 32 位系统构建的。尝试安装 32 位 C 库:

sudo apt-get install libc6:i386

如果仍然无法运行,请使用ldd查找库名称。如果libx11.so缺少 ,您可能需要一个名为 的包libx11。您可以随时使用http://packages.ubuntu.com/通过搜索文件名来找出包名称。

相关内容