我用的谷歌的安卓源码,以此记录下经历,尝试过使用清华源的,但是同步时有些莫名其妙的错误。很烦。(其实一开始用谷歌也很烦恼,因为对官方的文档看得不是很懂)
官方那个文档:
https://source.android.com/setup/initializing
https://source.android.com/setup/downloading
准备:
1.最好是更新下源吧,因为有很多工具包要下载
2.Ubuntu环境下F___Q(你懂得)
开始吧
sudo apt-get update
sudo apt-get install openjdk-8-jdk
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
这是对应14.04的程序包,保险起见再运行下这个吧:
sudo apt-get install -y git flex bison gperf build-essential libncurses5-dev:i386
sudo apt-get install libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-dev g++-multilib
sudo apt-get install tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo apt-get install dpkg-dev libsdl1.2-dev libesd0-dev
sudo apt-get install git-core gnupg flex bison gperf build-essential
sudo apt-get install zip curl zlib1g-dev gcc-multilib g++-multilib
sudo apt-get install libc6-dev-i386
sudo apt-get install lib32ncurses5-dev x11proto-core-dev libx11-dev
sudo apt-get install lib32z-dev ccache
sudo apt-get install libgl1-mesa-dev libxml2-utils xsltproc unzip m4
参考的https://blog.csdn.net/fuchaosz/article/details/51487585
至此环境就弄完了。
重点,就是这里非常烦。不管是换成国内的源还是F__Q总在init的时候出问题,要么就是Network Unreachable,要么就是Connect time out简直头大。百度半天也解决不来。
mkdir ~/bin
PATH=~/bin:$PATH
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
这里的邮箱账号要是你注册过的Google邮箱,后面会用到的
我推荐你直接使用这个链接初始化(在这之前先进行using Authentication,还有设置代理)
repo init -u https://android.googlesource.com/a/platform/manifest
浏览器打开这个网址
https://android.googlesource.com/new-password
确定,出现
把下面的那些命令直接复制粘贴到你的终端执行一遍。
然后就有权限了。
是不是就可以初始化了呢,不行,还需要设置代理(因为我是通过代理F__Q的)
这是官方上的,一开始我也看不懂呢,这咋设呀。这就跟我之前配的信息有关了,见我的另一篇博客https://blog.csdn.net/qq_28449863/article/details/79978822
来源于那个
所以我在export https_proxy="http://127.0.0.1:8123/" 因为那个痛是
https://gerrit.googlesource.com/git-repo/clone.bundle
https协议的。
做到这里应该是没有问题的了。(我是没问题了)
然后就是初始化了
repo init -u https://android.googlesource.com/a/platform/manifest
想选择分支啥的你自己考虑去吧。就不多做叙述
让其慢慢的初始化吧
然后就是同步了
rync -j4 (同步的时候有些404,忽略)
正常情况下应该是一次就能同步成功的。接下来就轻松了。按着官网一步一步来即可
To ensure the newly installed binaries are properly taken into account after being extracted, delete the existing output of any previous build using:
make clobber
source build/envsetup.sh
lunch aosp_arm-eng
make -j4这就开始编译了,需要挺久的(编译有很多警告,忽略)慢慢等待吧
之后会有一个安卓模拟器出现(就好像AndroidStudio里的ADT)
至此应该算是编译安卓源码成功了!
长叹一口气。。。。。。。(终于成了)