在Win10 上编译 Lineage OS 17.1 ZUK Z2 Plus备忘

本文档详细介绍了如何在Ubuntu环境下安装依赖、配置环境并编译LineageOS,包括设置默认用户、安装repo、解决编译过程中遇到的问题,如文件缺失和错误。最终目标是生成LineageOS的恢复映像和安装包。
摘要由CSDN通过智能技术生成

直接开始

一、安装Ubuntu,以管理员身份运行 cmd

运行:

wsl install Ubuntu

查看是否安装成功:

wsl --list --v

  NAME      STATE           VERSION
* Ubuntu    Running         2

打开 Ubuntu

二、安装依赖包

参考说明文档:https://wiki.lineageos.org/devices/z2_plus/build

在Ubuntu命令行执行

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

直到安装完成,如果未安装JDK,下一步安装JDK:

sudo apt install openjdk-8-jdk

下一步:更新

sudo apt upgrade

配置Git

git config --global user.email "邮箱"

创建源码目录:

cd ~
mkdir -p lineage-18.1
cd lineage-18.1

初始化代码 --depth 参数值不能太大:

repo init -u --depth=1 -u git://github.com/LineageOS/android.git -b lineage-17.1

开始同步:

repo sync --force-sync -j5

等待同步完成,如果有失败可运行

repo sync -j1 --fail-fast

三、编译前准备

export USE_CCACHE=1
export CCACHE_EXEC=/usr/bin/ccache

ccache -M 150G
ccache -o compression=true
source build/envsetup.sh
breakfast z2_plus

开始构建,构建之前确保有足够磁盘空间

croot
source build/envsetup.sh
lunch lineage_z2_plus-eng
brunch lineage_z2_plus-eng

 

 

 

假设构建完成没有错误(完成时很明显),在构建运行的终端窗口中键入以下内容:

cd $OUT
在那里你会找到所有创建的文件。比较感兴趣的两个文件是:

recovery.img,这是 LineageOS 恢复映像。

lineage-17.1-20211011-UNOFFICIAL-z2_plus.zip,这是 LineageOS 安装程序包。

遇到问题及解决办法

1、修改Ubuntu默认登录用户名

进入目录:C:\Users\xxxx\AppData\Local\Microsoft\WindowsApps\CanonicalGroupLimited.UbuntuonWindows_79rhkp1fndgsc
 执行:ubuntu.exe config  --default-user 默认用户名

2、Command 'repo' not found, did you mean

从 android  网站获取安装
	https://source.android.com/setup/develop#installing-repo
	mkdir ~/bin
	PATH=~/bin:$PATH
	export REPO=$(mktemp /tmp/repo.XXXXXXXXX)
	curl -o ${REPO} https://storage.googleapis.com/git-repo-downloads/repo
	chmod a+x ~/bin/repo
	gpg --recv-key 8BB9AD793E8E6153AF0F9A4416530D5E920F5C65
	curl -s https://storage.googleapis.com/git-repo-downloads/repo.asc | gpg --verify - ${REPO} && install -m 755 ${REPO} ~/bin/repo

3、build/target/product/verity.mk:28: error: _nic.PRODUCTS.[[device/zuk/z2_plus/lineage_z2_plus.mk]]

解决办法:

找到文件: device/zuk/msm8996-common/msm8996.mk
注释掉:$(call inherit-product, vendor/zuk/msm8996-common/msm8996-common-vendor.mk)
一行

4、出现错误:"internal error: failed to find dex jar path for module "WfdCommon"

修改 device/zuk/msm8996-common/msm8996.mk 文件
去掉 #PRODUCT_BOOT_JARS += \
#    WfdCommon

5、错误:external/ant-wireless/ant_native/Android.mk: error: "antradio_app (EXECUTABLES android-arm64) missing libantradio (SHARED_LIBRARIES android-arm64)"

解决办法:

命令行执行:
export ALLOW_MISSING_DEPENDENCIES=true

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值