RK3568 安卓源码编译

一.repo安卓编译工具

项目模块化/组件化之后各模块也作为独立的 Git 仓库从主项目里剥离了出去,各模块各自管理自己的版本。Android源码引用了很多开源项目,每一个子项目都是一个Git仓库,每个Git仓库都有很多分支版本,为了方便统一管理各个子项目的Git仓库,需要一个上层工具批量进行处理,因此repo诞生。

repo也会建立一个Git仓库,用来记录当前Android版本下各个子项目的Git仓库分别处于哪一个分支,这个仓库通常叫做:manifest仓库(清单库)。

二.repo下载安装

git clone https://mirrors.tuna.tsinghua.edu.cn/git/git-repo

三.使用repo工具下载安卓源码

 sky-build@sky-build:~/project/rs09$ ./../git-repo/repo init -u git@192.168.1.18:android11-rk3568/manifest.common.git -m Android11.common.xml

命令效果:

首先当前目录产生一个.repo目录

然后克隆一份repo的源代码到.repo/repo下,里面存放了其他repo子命令,即repo的主体部分。

接着从manifest_git_path仓库地址clone清单库到.repo/manifests和.repo/manifests.git目录。

同时.repo目录下还包括manifest仓库(清单库)内容

sky-build@sky-build:~/project/rs09/.repo$ ls -l
total 16
drwxrwxr-x  4 sky-build sky-build 4096 Aug 21 06:33 manifests
drwxrwxr-x 10 sky-build sky-build 4096 Aug 21 06:33 manifests.git
-rw-rw-r--  1 sky-build sky-build  509 Aug 21 06:33 manifest.xml
drwxrwxr-x  9 sky-build sky-build 4096 Aug 21 06:33 repo

sky-build@sky-build:~/project/rs09$ .repo/repo/repo sync

repo sync 相当于 git clone

初始化好一个 repo 工作目录后下一步就是把代码同步下来了,该命令用来下载新的更改并更新本地环境中的工作文件。如果您在未使用任何参数的情况下运行 repo sync,则该操作会同步所有项目(所有项目是指manifest文件中所有的project元素)的文件。

四.Android 编译

source build/envsetup.sh
lunch 
./build.sh -UKAup

五.固件说明

update.img是将全部固件打包起来的,一般整体烧录是烧写update.img.

相关推荐
小白也想学C4 分钟前
Android 功耗分析(底层篇)
android·功耗
曙曙学编程11 分钟前
初级数据结构——树
android·java·数据结构
闲暇部落2 小时前
‌Kotlin中的?.和!!主要区别
android·开发语言·kotlin
诸神黄昏EX4 小时前
Android 分区相关介绍
android
大白要努力!5 小时前
android 使用SQLiteOpenHelper 如何优化数据库的性能
android·数据库·oracle
Estar.Lee5 小时前
时间操作[取当前北京时间]免费API接口教程
android·网络·后端·网络协议·tcp/ip
Winston Wood6 小时前
Perfetto学习大全
android·性能优化·perfetto
Dnelic-9 小时前
【单元测试】【Android】JUnit 4 和 JUnit 5 的差异记录
android·junit·单元测试·android studio·自学笔记
Eastsea.Chen11 小时前
MTK Android12 user版本MtkLogger
android·framework
长亭外的少年18 小时前
Kotlin 编译失败问题及解决方案:从守护进程到 Gradle 配置
android·开发语言·kotlin