在 64 位 12.04 上初始化 Android 构建环境

在 64 位 12.04 上初始化 Android 构建环境

我正在寻找初始化 AOSP 代码库(或任何 Android 源)的构建环境,该过程中的第一步是;

$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 openjdk-6-jdk tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386

$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so

我有一台(新安装的)Ubuntu 12.04 64 位机器,过去曾遇到过 32 位依赖问题。我想从一开始就解决这个问题。

我已经安装了所有软件包(通过 Synaptic 或 apt-get),但以下软件包除外;

libncurses5-dev:i386
libgl1-mesa-glx:i386
zlib1g-dev:i386

apt-get 单独返回这三个;

danielgt@danielgt-linux:~$ sudo apt-get install libncurses5-dev:i386 libgl1-mesa-glx:i386 zlib1g-dev:i386
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libgl1-mesa-glx:i386 is already the newest version.
The following extra packages will be installed:
libc6-dev:i386 linux-libc-dev:i386
Suggested packages:
glibc-doc:i386 manpages-dev:i386 ncurses-doc:i386
Recommended packages:
gcc:i386 c-compiler:i386
The following packages will be REMOVED
build-essential g++ g++-multilib gcc gcc-multilib libncurses5-dev
The following NEW packages will be installed
libc6-dev:i386 libncurses5-dev:i386 linux-libc-dev:i386 zlib1g-dev:i386
0 upgraded, 4 newly installed, 6 to remove and 0 not upgraded.
Need to get 6,349 kB of archives.
After this operation, 23.2 MB of additional disk space will be used.
Do you want to continue [Y/n]? n
Abort.
danielgt@danielgt-linux:~$

对于我来说,运行最后一个命令似乎是违反直觉的;

  1. 删除原始命令中指示需要的 build-essential 和 g++-multilib 包。
  2. 删除 64 位软件包(libcurses5-dev)并将其替换为 i386 变体,因为构建需要 64 位系统。

此外,我似乎没有安装 libgl1-mesa-glx:i386,尽管我确实有 64 位版本 (libgl1-mesa-glx)。运行的第二个 (ln) 命令是否解释了这一点?

欢迎就我该如何进行提出任何建议?

答案1

我安装了 Ubuntu 12.04.2 amd64,以下命令对我有用。第二个命令(符号链接)是不需要的。

sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx-lts-quantal:i386 \
libgl1-mesa-dev g++-multilib mingw32 tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386

我没有安装openjdk-6-jdk,而是曾经使用jdk-6u37-linux-x64.bin

cd ~
./jdk-6u37-linux-x64.bin
export PATH=~/jdk1.6.0_37/bin:$PATH

答案2

我在安装时遇到了同样的问题libgl1-mesa-glx:i386。然后我删除了那个并安装libgl1-mesa-glx-lts-quantal:i386。它对我有用。我可以得到/usr/lib/i386-linux-gnu/mesa/libGL.so.1

答案3

Ubuntu 12.04.03 (AMD64) 的推荐答案失败。Ubuntu 重启时挂起。在 GUI 启动屏幕显示颜色循环点后,我可以通过立即按 Esc 键进入命令提示符。

我能够按照以下说明正确启动 GUI:https://askubuntu.com/users/125872/grzegorz对于以下帖子:

初始化 Android 构建环境后 Ubuntu 无法启动

调查 Android 环境是否正常运行....

相关内容