Android 9.0 内核编译实战(以一加6为例)
前人栽樹后人乘涼…
我們這里用EX內(nèi)核編譯做個示范 https://github.com/flar2/OnePlus6/tree/ElementalX-3.00
1.同步代碼啦
git clone https://github.com/flar2/OnePlus6.git -b ElementalX-3.002.交叉編譯工具鏈下載
https://android.googlesource.com/platform/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/
解壓到某個目錄.
3.配置環(huán)境,這個可以參考我的上一篇文章,只到搭建環(huán)境那一步源碼就不用同步啦…編譯內(nèi)核我們用不到那么多…
https://blog.csdn.net/qq910689331/article/details/83622290
我這里直接這么干了.最好還是配置臨時環(huán)境變量
sudo gedit /etc/profile export ANDROID_AARCH64=~/android/onepluspie/prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin export ARCH=arm64 export SUBARCH=arm64 export PATH=$PATH:$ANDROID_AARCH64 export CROSS_COMPILE=aarch64-linux-android- source /etc/profile && . /etc/profile cd ~/android/onepluspie/kernel/oneplus/ElementalX-3.00 make O=output elementalx_defconfig cd output make O=output DTC_EXT=dtc -j164.開心的告訴你,上面的命令已經(jīng)把內(nèi)核編譯出來了… 生成的產(chǎn)物在
~/android/onepluspie/kernel/oneplus/ElementalX-3.00/output/arch/arm64/boot/ ~/android/onepluspie/kernel/oneplus/ElementalX-3.00/output/arch/arm64/boot/dts/下面是將內(nèi)核刷入手機(jī),
這里推薦一個開源庫anykernel2,具體使用自己去看,灰常詳細(xì)
https://github.com/osm0sis/AnyKernel2/blob/master/README.md
一加6是A/B system…我很懶 直接用現(xiàn)成的腳本啦…
解壓
EX內(nèi)核卡刷包
我們只需要替換dtbs kernel即可
dtbs目錄底下的sdm845-v2.1.dtb sdm845-v2.dtb sdm845.dtb 對應(yīng)于我們編譯出來的
~/android/onepluspie/kernel/oneplus/ElementalX-3.00/output/arch/arm64/boot/dts/qcom
下的文件…
kernel/Image.gz 對應(yīng)于我們編譯出來的~/android/onepluspie/kernel/oneplus/ElementalX-3.00/output/arch/arm64/boot/Image.gz
替換壓縮成zip,導(dǎo)入手機(jī)用twrp3.2.3(Team Win Recovery Project) 刷入即可…
刷完了老哥.下面我們看下成果
文中用到的卡刷文件
都在這了
鏈接: https://pan.baidu.com/s/1Tnmaa8ZvMK2OsC9iU7DlGA 提取碼: 4wnu 復(fù)制這段內(nèi)容后打開百度網(wǎng)盤手機(jī)App,操作更方便哦
這,只是剛剛開始,內(nèi)核有趣的多了…自個玩去吧
總結(jié)
以上是生活随笔為你收集整理的Android 9.0 内核编译实战(以一加6为例)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: svn: Can't convert s
- 下一篇: 持续暴跌,美股入熊!能否西降东升?