當前位置:編程學習大全網 - 源碼下載 - 如何編譯lineage不支持的機型

如何編譯lineage不支持的機型

首先整理相應的機型MK文件device文件,android_device_$your-device-name

kernel文件,android_kernel_$your-device-name

vendor文件,android_vendor_$your-device-name

收集或者制作或者修改,完成,妳的機型文件後

同步下載lineage的源碼:

清華鏡像源,打開看教程(同步出錯有問題就百度,壹般都有答案,系統最好在Linux和他的各種分支中選擇>經常用Windows-覺得Mac很反人類-不過開發商好像很喜歡-可能是蘋果給出的條件太好-沒人能拒絕,我覺得Ubuntu不錯,也很喜歡Deepin-適合新手-國內維護挺不錯的

然後整理MK文件:

也可以點這裏,去官網找壹下相關機型或品牌文件作為參考

比如我的手機是ZUK EDGE

##?ZUK?EDGE

#?我的機型代號-z2x,這個是開發用的代號;

#?我的內部機型-z2151,這個是從官方下載開源部分需要的型號;

#?ZUK特殊部分其他機型不壹定會有壹般就是三個:device、kernel、vendor(非必有)

#?<?類型?name="倉庫名"?path="文件路徑"?/>

<?android

name="lineage"

path="~/bin/lineage"?/>

<?device?

name="android_device_zuk_z2"

path="$android/device/zuk/z2x"?/>

<?device?

name="android_device_zuk_msm8996-common"

path="$android/device/zuk/msm8996-common"?/>?#ZUK特殊部分

<?kernel

name="android_kernel_zuk_msm8996"

path="$android/kernel/zuk/msm8996"?/>?#這個命名比較特別,打包開發的

<!--?附加部分,vendor壹般有生成腳本或者需要額外編寫?-->

<?vendor

name="android_vendor_z2x"

path="$android/vendor/zuk/z2x"?/>

<?vendor

name="android_vendor_msm8996-common"

path="$android/vendor/zuk/msm8996-common"?/>?#ZUK特殊部分

#end

######錯誤部分,可以查閱,幫助理解,最好跳過,跳過

把上面的文件解包放置到相應文件夾下

device文件,android_device_$your-device-name

kernel文件,android_kernel_$your-device-name

vendor文件,android_vendor_$your-device-name

"_"對應是壹個文件夾分層,比如device就是在“android源碼“文件夾下(看妳怎麽起名字,就是清華網站中提示妳的“WORKING_DIRECTORY”文件夾,可以是‘android’、‘lineage’等等)的device文件夾下,妳的機子品牌文件夾下,妳的機型裏(比如我的手機是ZUK EDGE-我是窮逼,沒錢換機,我的相應機型代號就是z2x-根據代號搞開發,內部機型z2151-根據內部型號找官方開源代碼,以下示例)

示例:

device:android_device_zuk_z2x

倉庫文件就在:~/bin/lineageOS/device/zuk/z2x

kernel:android_kernel_zuk_msm8996#為什麽這個忽然變成msm8996了呢,哈哈|

倉庫文件就在:~/bin/lineageOS/kernel/zuk/msm8996#因為機型特別

vendor:android_vendor_zuk_z2x#壹般是不提供這個倉庫部分的,

#會有比如“extract-files.sh”等腳本

#需要連接妳的手機,生成這些文件

以上引號部分是由百度自動保存編寫錯誤部分

最後是編譯:

source?build/envsetup.sh

lunch?lineage_z2x-userdebug#這條命令去查看機型文件夾下的?lineage_*.mk文件,把z2x換成妳的

cd?device/zuk/z2x?#這條應該是妳的機型文件夾,和下壹條命令看情況找找妳的vendor擴展腳本

./extract-files.sh?#這個看情況,找找妳的腳本

croot?#返回lineage根目錄

make?-j8?#開始編譯ROM,後面的?-j*?是線程,看妳的CPU而定

#看輸出log,編譯完成ROM在out文件夾下

這樣就完成了:

看似簡單,實則簡單,但是肯定會出錯,因為妳是在學習,好好學,好好問問,學會用百度,別跟個楞頭B壹樣,張嘴就是:我是小白,這個怎麽弄,我不會啊,妳教教我唄,這個什麽意思;崽種不會自己學

# 好了,結束,加油

  • 上一篇:關於生成html 文件的技術請教
  • 下一篇:在ASP.NET,什麽工具用於顯示工具箱中的用戶列表?
  • copyright 2024編程學習大全網