未找到文件,但文件存在

未找到文件,但文件存在

运行 Ubuntu 14.04 x64,我喜欢执行二进制文件。这个:

$ ls -la /opt/android-sdk-linux/tools/emulator
-rwxrwxr-x 1 tho tho 35640 Nov 19 14:46 /opt/android-sdk-linux/tools/emulator

如果我以用户身份运行可执行文件,则会出现以下file not found错误:

$ /opt/android-sdk-linux/tools/emulator
bash: /opt/android-sdk-linux/tools/emulator:  no such file or directory

我尝试了以下命令:

$ file /opt/android-sdk-linux/tools/emulator
/opt/android-sdk-linux/tools/emulator: ELF 32-bit LSB  executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, stripped

readelf -l emulator没有任何错误地返回。

ldd emulator说这个程序是不是动态链接

$ strace  /opt/android-sdk-linux/tools/emulator
execve("/opt/android-sdk-linux/tools/emulator", ["/opt/android-sdk-linux/tools/emu"...], [/* 64 vars */]) = -1 ENOENT (No such file or directory)
write(2, "strace: exec: No such file or di"..., 40strace: exec: No such file or directory
) = 40
exit_group(1)                           = ?
+++ exited with 1 +++

造成该错误的原因是什么?

答案1

您运行的是 64 位 Linux,但 Android SDK 工具是 32 位的。同时,您的系统上没有安装 32 位兼容库。

因此你只需要安装这些:

sudo apt-get install ia32-libs

相关内容