【问题标题】:Compiling Android Framework (AOSP)编译 Android 框架 (AOSP)
【发布时间】:2017-07-24 12:07:21
【问题描述】:

我正在尝试在 Ubuntu 16.10(64 位)上编译 Android 框架。 在编译过程中,使用这个命令“ma​​ke -j1”我得到这个问题:

============================================
PLATFORM_VERSION_CODENAME=REL
PLATFORM_VERSION=4.0.1
TARGET_PRODUCT=full
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv7-a
HOST_ARCH=x86
HOST_OS=linux
HOST_BUILD_TYPE=release
BUILD_ID=ITL41D
============================================
host C++: aapt <= frameworks/base/tools/aapt/AaptAssets.cpp
<command-line>:0:0: warning: "_FORTIFY_SOURCE" redefined [enabled by default]
frameworks/base/tools/aapt/AaptAssets.cpp:1:0: note: this is the location of the previous definition
In file included from frameworks/base/include/utils/Vector.h:20:0,
                 from frameworks/base/include/utils/AssetDir.h:24,
                 from frameworks/base/include/utils/AssetManager.h:24,
                 from frameworks/base/tools/aapt/AaptAssets.h:10,
                 from frameworks/base/tools/aapt/AaptAssets.cpp:5:
/usr/include/c++/4.7/new:41:28: fatal error: bits/c++config.h: File o directory non esistente
compilation terminated.
make: *** [out/host/linux-x86/obj/EXECUTABLES/aapt_intermediates/AaptAssets.o] Errore 1

有人知道如何解决这个问题吗?谢谢。

【问题讨论】:

    标签: android linux compilation frameworks android-source


    【解决方案1】:

    也许你错过了这个pre-build step

    sudo apt-get install git-core gnupg flex bison gperf build-essential \
      zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
      lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
      libgl1-mesa-dev libxml2-utils xsltproc unzip
    

    对于您的特殊情况,multilib 似乎丢失了

    【讨论】:

    • 但这是我使用 Ubuntu 16.10 时 Ubuntu 14.04 的预构建步骤。无论如何,我尝试了这个命令,但这给了我这个错误: Si sono verificati degli errori nell'elaborazione: /var/cache/apt/archives/lib32z1-dev_1%3a1.2.8.dfsg-2ubuntu5_amd64.deb E: Sub-process /usr /bin/dpkg 返回错误代码 (1)。还有其他想法吗?
    • 可能是thisthis
    • 对于您的确切问题,sudo apt-get install gcc-multilib g++-multilib 解决了问题吗?
    • No it' 不起作用,因为当我按照您对我说的安装 multilib 时,操作系统说我刚刚拥有它:g++-multilib 已经是最新版本(4:6.1.1-1ubuntu2)。 gcc-multilib 已经是最新版本(4:6.1.1-1ubuntu2)。所以它不起作用:(
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-15
    • 1970-01-01
    • 1970-01-01
    • 2020-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多