[Linux on m8]第二篇、拉取源码
文章对应的教程:https://docs.halium.org/en/latest/porting/get-sources.html
如果上一篇配置没问题的话,接下来拉取源码是不会遇到网络问题的,但是拉取的速度大多数情况下取决于代理服务器的速度,但是可以使用国内镜像加速获取AOSP源码,加快拉取速度。
mkdir halium && cd halium
repo init -u https://github.com/Halium/android -b halium-7.1 --depth=1
然后修改.repo/manifest.xml
,将https://android.googlesource.com
替换为https://aosp.tuna.tsinghua.edu.cn
:
<manifest>
<remote name="aosp"
- fetch="https://android.googlesource.com"
+ fetch="https://aosp.tuna.tsinghua.edu.cn"
review="android-review.googlesource.com" />
<remote name="github"
中科大的AOSP镜像 : http://mirrors.ustc.edu.cn/aosp/。
清华大学AOSP镜像 : https://aosp.tuna.tsinghua.edu.cn
开始同步:
repo sync -c -j 16
添加设备源代码halium/devices/manifests/[manufacturer]_[device].xml
,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<project path="device/htc/m8" name="android_device_htc_m8" remote="los" />
<project path="device/htc/m8-common" name="android_device_htc_m8-common" remote="los"/>
<project path="device/htc/msm8974-common" name="android_device_htc_msm8974-common" remote="los"/>
<project path="vendor/htc" name="proprietary_vendor_htc" remote="them"/>
<project path="kernel/htc/msm8974" name="android_kernel_htc_msm8974" remote="los"/>
</manifest>
这个文件需要三部分的内容path
对应文件下载到的目录,name
对应github
上面的仓库名称,remote
对应地址,需要添加一个设备源码:android_device_[manufacturer]_[device]
,内核源码:android_kernel_[manufacturer]_[device]
,还有厂家的二进制文件:proprietary_vendor_[manufacturer]
,只要手机有lineageOS
官方包,这些仓库都是很容易找到的,然后执行:
./halium/devices/setup DEVICE
如果过程没有错误,那么编译需要用到的源码就全部下载下来了。