![在 64 位 12.04 上初始化 Android 构建环境](https://linux22.com/image/831561/%E5%9C%A8%2064%20%E4%BD%8D%2012.04%20%E4%B8%8A%E5%88%9D%E5%A7%8B%E5%8C%96%20Android%20%E6%9E%84%E5%BB%BA%E7%8E%AF%E5%A2%83.png)
我正在寻找初始化 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:~$
对于我来说,运行最后一个命令似乎是违反直觉的;
- 删除原始命令中指示需要的 build-essential 和 g++-multilib 包。
- 删除 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 环境是否正常运行....