官方网站:
https://source.android.com/setup/start/build-numbers.html#source-code-tags-and-builds
初始回购仓库
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.0.1_r1
我们在这里下载5.1系统代码。 我会直接在系统上操作它。 这里的-u是url,-b是分支。 分支
repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-5.1.0_r1
然后我们就可以同步代码了:
repo sync
您还可以添加参数,但不要在此处添加。 如果并发太高,其他人就无法使用。
这样就实现了代码的同步。 下载代码需要多长时间取决于网络速度。
您可以每天晚上将其打开,并在第二天早起。 如果没有问题的话应该没问题。
下载完成:
系统编译
我们下载源码后,会得到这样一个目录的代码:
编译系统有多少步骤?
我们先不分析这种文件夹的用途。 稍后我们修改代码的时候会解释。
系统编译
第 1 步:将脚本加载到环境中
source build/envsetup.sh
第二步:加载目标版本进行编译
第三步:编译系统
我在这里使用了 make -j40
这个40是你cpu线程数的两倍。 我的CPU有20个线程,所以我使用40个。对于一般的个人计算机,8/16就可以了。 只要看看你的配置。
等待系统编译完成,i7高端CPU大约需要1小时,服务器大约需要45分钟。
编译结果
编译完成后显示如下:
看到上一条就说明编译成功了!耗时1小时9分31秒
编译完成后,会多出一个out目录
至于运行这个系统,你可以自己运行一下,因为我的系统没有UI。
运行你编译的系统并通过以下命令启动模拟器
emulator
源码下载地址:
https://pan.baidu.com/s/1fbLQR69JuEWa0RdF0vEjpQ 提取码:at1k
这是我昨天编译的android7.1.1。 以上是5.1的代码下载和编译。 套路都是一样的,搭建环境,下载源码,编译。 至于增量编译,分别编译这些,我们前面会分别分析。
总结
Android系统编译分为:环境搭建、下载源码、编译系统。
在编译系统时android 源码编译平台,我们使用了几个命令。 source好像加载了控制编译的脚本到环境中android 源码编译平台,直接使用上面的命令就可以了。 其中我们的午餐也是上面的命令。 而这个脚本是一个shell脚本。
打开脚本可以看到里面的说明。
也就是说顺序不能乱,必须先将脚本加载到系统环境中。
第二个是午餐。 您可以填写参数的编号或名称。
user、userdebug 和 eng 是什么意思?
以下是来自官网的描述:
最后就是make,-j表示编译并发量,Google推荐是cpu线程数的两倍。 我已经验证过太高或太低都会影响速度。