【问题标题】:Android SDK - aapt error : libstdc++.so.6 cannot open shared object fileAndroid SDK - aapt 错误:libstdc++.so.6 无法打开共享对象文件
【发布时间】:2014-08-01 06:18:36
【问题描述】:

出于测试目的,我在新的 ADT 安装(Ubuntu Gnome 14.04 LTS,x86_64 CPU)上创建了一个新项目,将所有参数保留为默认值(我没有进行任何代码更改),但我在 Eclipse 控制台中出现以下错误:

[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

这是我已经尝试过的:

-> 我尝试通过 Ubuntu 软件存储库(重新)安装 ia32-libs、libstdc++ 和 libstdc++6:没有变化

-> 检查更新(针对 Eclipse 和 SDK):没有变化

-> 重新安装所有 Android 构建工具:没有变化

-> 重新安装 ADB:没有变化

【问题讨论】:

  • 成功了,谢谢。您可以通过以下方式发布您的答案:sudo apt-get install lib32stdc++6 lib32z1 lib32z1-dev

标签: android linux adt libstdc++


【解决方案1】:
sudo apt-get install lib32stdc++6 lib32z1

【讨论】:

  • 我认为不需要 lib32z1-dev 包。我试过没有它,它工作得很好。 -dev 包通常仅在您针对该库进行编译时才需要。
  • 我真的不知道是否需要 lib32z1-dev 包,但这对我有用。
  • 对于 centos:yum upgrade libstdc++yum install libstdc++.i686 为我解决了问题
  • 正如@HRJ 在-dev 包中评论的不需要。编辑了答案并将其删除。
  • 是的,Ubuntu16 需要 32 位 stdc++。谢谢
【解决方案2】:

在我的 64 位 Ubuntu 14.04 桌面上,这就是我所需要的:

sudo apt-get install lib32stdc++6

【讨论】:

  • 我也是!对于其他阅读此答案的人,请先尝试此操作,然后再尝试安装更多软件包!
【解决方案3】:

我也有一个 64 位 Ubuntu 14.04 桌面,该设置的正确答案确实是:

sudo apt-get install lib32stdc++6

【讨论】:

    【解决方案4】:

    在我的 Ubuntu 16.04 中,我无法安装“所有”库( sudo apt-get install lib32stdc++6 )并显示以下消息:

    $ sudo apt-get install libgl1-mesa-dev:i386
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Some packages could not be installed. This may mean that you have
    requested an impossible situation or if you are using the unstable
    distribution that some required packages have not yet been created
    or been moved out of Incoming.
    The following information may help to resolve the situation:
    
    The following packages have unmet dependencies:
     libgl1-mesa-dev:i386 : Depends: libgl1-mesa-glx:i386 (= 11.2.0-1ubuntu2) but it is not going to be installed
    E: Unable to correct problems, you have held broken packages.
    

    经过一番挖掘,我发现我正在使用带有 SDK 19 的 aapt。( android-sdk-linux/build-tools/19.x.y/aapt)

    将 appt 从 sdk 19 切换到 sdk 24 对我有用。

    通过编辑相应的gradle文件,将buildToolsVersion从19改为24.0.1:

    android {
        buildToolsVersion "24.0.1"
    }
    

    【讨论】:

      【解决方案5】:

      我使用的是 ubuntu 15.04 版本。我遇到了同样的问题。 我已经安装了 ia32-libs 包(现在已更改为 lib32z1 lib32ncurses5 包) 当我尝试使用命令时

      sudo apt-get install lib32stdc++6 lib32z1 lib32z1-dev

      我得到了一个可能解决问题的 lib32stdc++6 软件包列表,但此命令无法解决问题。 所以我只是使用命令安装了 lib32stdc++6 包

      sudo apt-get install lib32stdc++6

      这对我很有效

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-13
        • 1970-01-01
        • 2017-01-20
        • 2019-04-23
        • 2014-04-30
        • 1970-01-01
        相关资源
        最近更新 更多