作者:JoanNewLife | 来源:互联网 | 2024-12-23 11:49
当您在新的ADT安装(例如Ubuntu 14.04 LTS,x86_64架构)上创建一个用于测试的新项目,并保留所有默认参数时,可能会遇到以下Eclipse控制台中的错误:
```bash
[2014-06-11 09:03:10 - Kronos] /home/erwan/Applications/ADT/adt-bundle-linux-x86_64-20140321/sdk/build-tools/19.1.0/aapt: error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory
```
### 尝试过的解决方案
1. **通过Ubuntu软件仓库安装依赖库**:尝试重新安装ia32-libs、libstdc++和libstdc++6,但没有解决问题。
2. **检查更新**:确保Eclipse和SDK都是最新版本,但这并未带来任何变化。
3. **重新安装Android构建工具**:重新安装所有Android构建工具,仍然无效。
4. **重新安装ADB**:重新安装ADB,问题依旧。
### 解决方案
对于64位Ubuntu 14.04桌面系统,可以通过以下命令安装所需的32位库:
```bash
sudo apt-get install lib32stdc++6 lib32z1
```
对于某些更高版本的Ubuntu(如16.04),可能需要调整安装的库列表。例如,在Ubuntu 16.04中,可以尝试安装`libgl1-mesa-dev:i386`,但可能会遇到依赖性问题。在这种情况下,建议切换到较新的SDK版本。
#### 切换SDK版本
如果您使用的是旧版本的SDK(如19.x),可以尝试切换到较新的版本(如24.x)。通过编辑Gradle文件,将`buildToolsVersion`从19更改为24.0.1:
```groovy
android {
buildToolsVersion "24.0.1"
}
```
#### 其他注意事项
如果您使用的是Ubuntu 15.04或更高版本,确保安装了正确的32位库,如`lib32z1`和`lib32ncurses5`。具体命令如下:
```bash
sudo apt-get install lib32stdc++6 lib32z1 lib32z1-dev
```
这通常可以解决大多数与libstdc++.so.6相关的问题。如果问题依然存在,请检查您的环境配置和依赖关系,确保所有必要的库都已正确安装。