/
AOSP镜像和Linux程序编译

AOSP镜像和Linux程序编译

文档用于指导OpenFDE开发爱好者如何快速编译OpenFDE源码。编译工作包括AOSP代码编译和Linux程序编译。

1. AOSP源码编译

1.1 准备环境

  AOSP源码编译需要准备一台多核的X86主机,内存要求16G,硬盘大小最低要求配备512G,这里建议优先使用固态硬盘,当然你也可以使用机械硬盘,但是编译速度可能会很慢。

1.2 安装Ubuntu22.04

  准备好主机后,需要在你的环境上安装Ubuntu22.04, 友情提供下载链接:https://old-releases.ubuntu.com/releases/22.04/ 在这里找到ubuntu-22.04.3-live-server-amd64.iso下载。

1.3 安装和更新repo依赖

  Android通常使用repo脚本管理源码树,方便大家用一个命令就可以下载几百个仓库。

  • 安装curl、repo、wget工具

sudo apt install curl repo wget -y
  • 获取repo脚本文件

curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo && chmod +x repo && sudo mv repo /usr/bin/repo
  • 把python3链接到python

sudo ln -sf /usr/bin/python3 /usr/bin/python
  • 设置repo_url环境变量,以便后续repo检查更新

  • 将repo_url添加到bash环境变量

1.4 安装编译依赖

1.5 下载源码

注意:从这一节开始,后续的操作都不要使用root用户,请务必切换到普通用户操作

  • 创建fde目录,并安装git工具

  • 配置git账号和邮箱

这里记得把user.name的参数"openfde"和user.email的参数"openfde@openfde.com"换成你自己的用户名和邮箱。

  • 下载fde的mainifests仓库

该步骤会按照fde manifests仓库初始化android源码树目录结构,其中-u表示指定从中检索清单代码库的地址;-b表示指定代码分支。fde_w是我们的开发分支,最新的代码都在该分支上。

在执行repo init这条命令时,可能会出现Testing colorized output (for 'repo diff', 'repo status'): black red green yellow blue magenta cyan white bold dim ul reverse Enable color display in this user account (y/N)? , 此时输入y继续执行即可。

  • 同步代码库中的最新代码

repo sync命令会耗时50min左右,这里需要用心等待,当然也会根据实际环境的网络情况耗时不同。如果执行失败,你可以尝试再次执行,直到成功。

1.6 编译Android源码

  • 导入安卓编译环境变量

  • 同步预编译的APK(本步骤的apk是系统基础组件apk如systemui.apk等,运行命令会自动下载)

syncFdeApk命令会从公网对象存储中下载当前版本匹配的apk到aosp源码树对应位置。如果修改了对应的apk源码,需要重新编译apk,请参考Android APK编译

  • 选择编译选项,使用24线程执行编译

整个编译过程一般耗时在1小时10分钟左右,如果在这一步中断,需要从"导入安卓编译环境变量"source build/envsetup.sh开始重新执行整个编译环节。

如果在编译过程中出现下图中的编译错误,请忽略,不影响编译过程。

image-20240130-074112.png

1.7 转换镜像格式为linux ext格式

1.8 拷贝镜像到运行目标

user@target:表示后面用来编译Linux程序的ARMv8环境,其中user表示账户名,target表示机器的ip地址。这里务必加上后面的冒号!!!

2. Linux程序编译

2.1 编译前准备

Linux程序编译需要在ARMv8架构的主机上进行,你需要选定一个工程目录来编译和安装Linux相关程序,下面各小节的操作都在工程目录如openfde-linux/下进行。如果不是首次编译,请确保将各个依赖库的代码同步更新到最新。

下面将详细介绍在不同的操作系统上编译Linux程序。

2.2 Kylin2303上编译Linux程序

2.2.1 设置要求

开始编译之前,请先前往系统设置-安全中关闭网络保护、应用保护和设备安全保护。

image-20240130-074204.png

2.2.2 一键编译

你可以执行下列命令进行一键编译Linux程序。

 

Add label

Related content

快速了解
快速了解
Read with this
Ubuntu(22.04|24.04)上安装OpenFDE
Ubuntu(22.04|24.04)上安装OpenFDE
More like this
Compiling aosp images and linux programs
Compiling aosp images and linux programs
Read with this
统信OS安装OpenFDE
统信OS安装OpenFDE
More like this
Making deb
Making deb
Read with this
4.2.4 使用FDE仓库编译waydroid
4.2.4 使用FDE仓库编译waydroid
More like this