问题描述
我刚刚从Ubuntu 11.04 32位升级到Ubuntu 11.10 x64。但我发现一个非常烦人的问题。当我将可执行文件从文件浏览器拖到shell时,shell说bash: /home/fenfei/app/android-sdk-linux/platform-tools/adb: No such file or directory
就在那里。我也有执行… /java的问题。所以我删除了java,然后再次解压缩java包然后执行它就可以了。但对于/home/fenfei/app/android-sdk-linux/platform-tools/adb
,该方法不起作用。所有这些都标记为可执行文件。
有人可以帮帮我吗?
最佳解决方案
如果您不想使用您不需要的i386库来填满计算机。
对于adb
,您只需要:
sudo apt-get install libc6:i386 libstdc++6:i386
对于aapt
,您需要添加:
sudo apt-get install zlib1g:i386
您可以通过运行来查看可执行文件所需的所有库:
objdump -x .../adb | grep NEEDED
仍然需要一些猜测和搜索来查找包含这些文件的包。 http://packages.ubuntu.com/的“搜索包的内容”是一个很好的选择。请记住添加i386
作为体系结构。
次佳解决方案
显示消息“无此类文件或目录”,因为缺少共享库。您可以使用ldd命令查看这些内容:
ldd /home/fenfei/app/android-sdk-linux/platform-tools/adb
可能你错过了32位库。你必须安装:
apt-get install ia32-libs
在Ubuntu 13-10上,ia32-libs不再可用;相反,安装替换包:
apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0
第三种解决方案
对于那些喜欢我安装了ia32-libs的人来说,Kenno的观察可能很有用:
sudo apt-get install --reinstall libc6-i386
http://kenno.wordpress.com/2011/10/27/ubuntu-11-10-32-bit-applications-do-not-run-64-bit/