从零开始自定义安卓系统(2) 编译redroid
从零开始自定义安卓系统(2) 编译redroid
添加redroid补丁
redroid
添加了自己的补丁
|
|
具体补丁内容可以查看 仓库 对应文件夹
准备编译
|
|
这个envsetup.sh
文件里添加了很多辅助函数 可以使用hmm
查看. 最常用的几个
m
编译整个项目mm
编译当前目录项目croot
回到项目根目录lunch
选择编译目标
大部分只是简单的命令套壳无需关心, 剩下的也只是调用 build/soong/soong_ui.bash
这个脚本
这个脚本有 "--make-mode" "--dumpvar-mode" "--dumpvars-mode" "--build-mode"
四个选项
--dumpvar-mode
用于从整个项目里获取编译变量设置, get_build_var
就简单封装了这个功能
lunch
获取可用编译目标 就是调用 get_build_var COMMON_LUNCH_CHOICES
(这个可以在命令行里直接执行)
可以看到输出里面出现了redroid
开头的四个选项,
|
|
这是redroid
添加的 位于device/redroid/AndroidProducts.mk
,
然后执行
|
|
同步git lfs
文件, 原版是不需要的. 但是redroid
在external/chromium-webview/prebuilt/
添加了lfs
项目, 如果速度很慢,可以考虑直接下载而不是走`lfs
接着执行
m
# -j x
等待很长一段时间后,就能在 out/target/
看到产物
编译完成打包成docker
|
|
配置环境 参考文档
|
|
出现闪退错误使用命令排查
sudo dmesg -T