当前位置: 首页>>技术教程>>正文


Eclipse和Android SDK存在问题

, , , , ,

问题描述

我安装了Eclipse,openjdk6并下载并解压缩了sdk manager文件。

现在,当我创建一个Android项目时,我收到以下错误:

2012-06-06 18:44:40 - contactManager] /home/catia/android-sdks/platform-tools/aapt: 
error while loading shared libraries: libz.so.1: cannot open shared object file: 
No such file or directory

当我尝试创建AVD Manager时这个:

[2012-06-06 19:00:18 - SDK Manager] /home/catia/android-sdks/tools/mksdcard: error 
while loading shared libraries: libstdc++.so.6: cannot open shared object file: No 
such file or directory 
[2012-06-06 19:00:18 - SDK Manager] Failed to create the SD card.
[2012-06-06 19:00:18 - SDK Manager] Failed to create sdcard in the AVD folder.

最佳解决方法

出现此问题是因为Android SDK是针对32位GNU /Linux系统编译的,而您的Ubuntu系统是64位GNU /Linux系统。解决方案应该很简单(因为Ubuntu完全支持在64位操作系统上运行32位程序) – 只需安装所需的32位版本的库。

最简单和最简单的方法是通过安装ia32-libs软件包来安装所有最常用库的32位版本。您可以在软件中心或终端中执行此操作:

64-bit,android,eclipse,openjdk,shared-library,ubuntu

sudo apt-get update
sudo apt-get install ia32-libs

最初提供ia32-libs是因为Ubuntu在其默认配置中不支持在64位系统上安装32位Ubuntu软件包。现在默认情况下完全支持这一功能,ia32-libs软件包只会在64位系统上安装相同的32位软件包,这些软件包将安装在最小的32位系统上。 (因此对于任何担心这可能不起作用的人,现在默认支持multarch:它仍然有效。)

来源:Android/Eclipse Installation on Ubuntu 11.04 – aapt and adb not working properly参见:Eclipse Android Plugin — libncurses.so.5

次佳解决方法

如果您使用的是Debian Jessie(或Ubuntu 13.10+),请尝试

sudo apt-get install lib32stdc++6

第三种解决方法

This thread对我有用。

具体来说,安装此包:

sudo apt-get install lib32z1 lib32z1-dev

第四种方法

我刚刚在Ubuntu 14.04 64位上遇到了这个问题。我的解决方案是:

sudo apt-get install -y libc6:i386 libgcc1:i386 libstdc++6:i386 libz1:i386

基于aapt工具所需的共享库:

$ readelf -d android-sdk-linux/build-tools/20.0.0/aapt | grep -i shared
 0x00000001 (NEEDED)                     Shared library: [librt.so.1]
 0x00000001 (NEEDED)                     Shared library: [libdl.so.2]
 0x00000001 (NEEDED)                     Shared library: [libpthread.so.0]
 0x00000001 (NEEDED)                     Shared library: [libz.so.1]
 0x00000001 (NEEDED)                     Shared library: [libstdc++.so.6]
 0x00000001 (NEEDED)                     Shared library: [libm.so.6]
 0x00000001 (NEEDED)                     Shared library: [libgcc_s.so.1]
 0x00000001 (NEEDED)                     Shared library: [libc.so.6]

第五种方法

这对我有用:aptitude install lib32stdc++6

第六种方法

sudo apt-get install lib32z1

这对我有用。

去突触 – >搜索lib32z1 – >选择运行时和开发应用和完成。

第七种方法

对于Ubuntu> = 13.04而不是ia32-libs,您需要libgl1-mesa-dev:i386

sudo apt-get install libgl1-mesa-dev:i386

检查Complete Installation Guide for Android SDK / ADT Bundle on Ubuntu

第八种方法

对于Ubuntu 15.04,以下是必要的:

sudo apt-get install lib32stdc++6 lib32z1

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/1371.html,未经允许,请勿转载。