如何从源码构建 TWRP Recovery

来自Uotan Wiki · 刷机百科
Snnbyyds讨论 | 贡献2024年2月14日 (三) 15:21的版本

该章节将引导你从源码构建TWRP Recovery

注意:本教程以TWRP-12.1qti Lahaina for arm64为例

部署环境

1. 硬件方面的选择

对于TWRP,除非你的电脑拥有较高的配置,我们一般建议你在实体机编译,以下为针对TWRP-12.1的推荐配置。

磁盘空间 内存
40GB+ 16GB+

2. 选择合适的操作系统

请使用64位的Linux发行版,推荐使用Ubuntu 22.04 LTS

Ubuntu安装教程: https://ubuntu.com/tutorials/install-ubuntu-desktop

Archlinux安装教程:https://wiki.archlinux.org/title/Installation_guide

3. 安装依赖项目

对于 Ubuntu 22.04 LTS等Debian系发行版,执行以下命令

sudo apt update
sudo apt upgrade
sudo apt install bc bison build-essential ccache curl flex g++-multilib gcc-multilib git git-lfs gnupg gperf imagemagick lib32ncurses5-dev lib32readline-dev lib32z1-dev libelf-dev liblz4-tool libncurses5 libncurses5-dev libsdl1.2-dev libssl-dev libxml2 libxml2-utils lzop pngcrush rsync schedtool squashfs-tools xsltproc zip zlib1g-dev

对于Archlinux, 你可以从AUR安装lineageos-devel

4. 获取repo工具

此处我们使用清华源,执行以下命令

 mkdir ~/bin
 export PATH=~/bin:$PATH
 cd ~/bin
 curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo -o repo
 chmod +x repo
 cd ~

5. 设置邮箱和用户名

此步骤只需要重复一次

 git config --global user.name "Your Name"
 git config --global user.email "youremail@yourdomain.com"

下载源代码

建议先设置从清华源更新repo工具,并配置git从清华源拉取AOSP源码

 git config --global url.https://mirrors.tuna.tsinghua.edu.cn/git/AOSP/.insteadof https://android.googlesource.com
 export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'
 

这里下载的是twrp-12.1的源代码,请灵活操作

 mkdir ~/twrp
 cd ~/twrp
 repo init --depth=1 -u https://github.com/minimal-manifest-twrp/platform_manifest_twrp_aosp.git -b twrp-12.1
 repo sync --force-sync

再克隆设备树(dt)

  • 这里我们克隆qti Lahaina for arm64的配置,注意一般的设备树命名方式为device_manufacture_codename, 克隆目录为device/manufacture/codename
 git clone --depth=1 -b twrp-12.1 https://github.com/QRD-Development/twrp_device_qcom_lahaina.git device/qcom/lahaina

编译

 . build/envsetup.sh
 lunch twrp_lahaina-eng
 mka bootimage