Eclipse Android Plugin —— libncurses. so.5

在 Eclipse 上安装64位的 ADT (Android 开发工具)让我非常纠结。

Eclipse 本身运行良好。

按照指示,我首先安装了常规的 Android SDK,即操作系统级别的工具包。这个过程很顺利,我可以在工具目录中使用 Android 应用程序。

在 Eclipse 中,这有一点困难,因为我首先必须安装 GWT 或与 google 相关的工具,这需要对 WST 进行核心的 Eclipse 靛蓝更新。最后,ADT 安装报告成功。

但是,每次打开 Eclipse 时,它都会弹出大量关于 libncurses. so.5和以下日志的文件:

[2012-04-04 02:06:35 - adb] /opt/android-sdk-linux/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
[2012-04-04 02:06:35 - adb] 'adb version' failed!
/opt/android-sdk-linux/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
[2012-04-04 02:06:35 - adb] Failed to parse the output of 'adb version':
Standard Output was:


Error Output was:
/opt/android-sdk-linux/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory


[2012-04-04 02:06:35 - adb] /opt/android-sdk-linux/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
[2012-04-04 02:06:35 - adb] 'adb version' failed!
/opt/android-sdk-linux/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory
[2012-04-04 02:06:35 - adb] Failed to parse the output of 'adb version':
Standard Output was:


Error Output was:
/opt/android-sdk-linux/platform-tools/adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

当我尝试打开 Android SDK Manager (在窗口下)时,插件确实打开了,但窗口没有任何关闭按钮(不像操作系统级别的同一个按钮,它看起来也是一样的) ,所以唯一的方法是找到 Eclipse PID 并杀死它。

51095 次浏览

You probably don't have libncurses5 installed. Try

rpm --install ncurses-libs

This solved the problem entirely:

yum install ncurses-libs.i686 libstdc++.i686 libgcc.i686

This is happening because Android SDK is a 32bit application and require some 32bit shared libraries,

I had same issue on Ubuntu 64 bits, and fixed with:

$ sudo apt-get install ia32-libs
yaourt -S multilib/lib32-ncurses

for ArchLinux

had similar issue on centos:

./adb: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory

did the following:

yum install ncurses ncurses-devel ncurses-libs ncurses-libs.i686   ncurses-devel.i686

And the issue fixed.

Install just libncurses5:

$ sudo apt-get install libncurses5:i386

ia32-libs will install much unnecessary libs.

This tip from Tim Mattison's blog did it for me under Debian Wheezy:

sudo apt-get install lib32ncurses5 lib32stdc++6