3. 下載并編譯android源碼

注意:硬盤剩余空間至少要100G吟逝。編譯過程分析參考:Android編譯過程及腳本分析甫匹。

1. 源碼下載

參考1:Android 鏡像使用幫助
參考2:AOSP(Android) 鏡像使用幫助
參考3:建立Android系統(tǒng)開發(fā)環(huán)境
參考4:編譯Android源碼
參考5:Android 系統(tǒng)源碼—下載到編譯
參考6:下載源代碼

android源碼目錄.png

參考7:Android4.4源碼編譯總結(jié)
參考8:Ubuntu 16.04(18.04) 編譯安卓4.4.4_r1系統(tǒng)源碼
參考9:Ubantu18.04環(huán)境下編譯android源碼
參考10:編譯最新Android源碼及SDK
android源碼主要目錄介紹.png

2. 編譯整個項(xiàng)目

編譯整個項(xiàng)目.png

可以使用 make 編譯任何代碼蒲牧。GNU make 可以借助 -jN 參數(shù)處理并行任務(wù),通常使用的任務(wù)數(shù) N 介于編譯時所用計(jì)算機(jī)上硬件線程數(shù)的 1-2 倍之間巡莹。例如司志,在一臺雙核 E5520 計(jì)算機(jī)(2 個 CPU甜紫,每個 CPU 4 個內(nèi)核,每個內(nèi)核 2 個線程)上骂远,要實(shí)現(xiàn)最快的編譯速度囚霸,可以使用介于 make -j16make -j32 之間的命令。make -j8 表示開八個線程編譯(開啟的線程數(shù)一般為內(nèi)核的兩倍激才,如果不知道電腦內(nèi)核直接 make 就好了)拓型。

說明:編譯Android源碼非常耗時(耗時不算停下來的時間大約6小時),并且編譯時會有各種錯誤導(dǎo)致編譯終止瘸恼,但百度一下都能找到解決方法劣挫,修改后重新編譯即可。這里我把我編譯過程中出現(xiàn)的問題總結(jié)了一下:
可忽略的提示:不會導(dǎo)致編譯終止

可忽略的提示1.png

報錯1:/bin/bash: xmllint: 未找到命令

編譯報錯1.png

解決:根據(jù)提示东帅,需動手安裝對應(yīng)的工具xmllint(libxml2-utils)揣云,安裝命令為 sudo apt-get install libxml2-utils
安裝xmllint.png

使用ubuntu的apt-get的時候冰啃,經(jīng)常會遇到install時失敗的情況。既然提示域名解析失敗刘莹,那么就想辦法加一個萬能的域名:
a. 編輯文件 sudo vim /etc/resolv.conf
b. 在最后加上 nameserver 8.8.8.8
c. 保存退出

添加萬能域名后重新安裝xmllint.png

編輯resolv.conf文件.png

報錯2:段錯誤阎毅,核心已轉(zhuǎn)儲

編譯仍報錯.png

解決:重新編譯,竟然編譯成功了
編譯成功.png

3. 編譯指定模塊

(1) 創(chuàng)建并編譯指定模塊

創(chuàng)建并編譯指定模塊.png

(2) 編譯指定模塊失敗
分析:可能是工程沒有make(編譯)過点弯,單獨(dú)編譯某個模塊導(dǎo)致的扇调。先把工程整個make一下。整個項(xiàng)目編譯成功后抢肛,才可重新編譯指定的test模塊:
編譯指定模塊.png

(3) 總結(jié):需掌握Android.mk 的基本語法

知識點(diǎn)1:修改編譯生成的目標(biāo)文件的安裝目錄
備注:修改Android.mk狼钮,使用連接符“\”將每個源文件添加到Android.mk中,保存后重新編譯即可捡絮。test.c為


修改Android.mk文件.png

修改后重新編譯該模塊.png

知識點(diǎn)2:編譯多個源碼文件
備注:修改Android.mk熬芜,配置環(huán)境變量LOCAL_MODULE_PATH,保存后重新編譯即可福稳。


修改Android.mk文件.png

修改后重新編譯該模塊.png

拓展:使用tree命令查看目錄結(jié)構(gòu)
備注:需先使用ubuntu的apt命令安裝tree工具涎拉。


拓展.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市的圆,隨后出現(xiàn)的幾起案子鼓拧,更是在濱河造成了極大的恐慌,老刑警劉巖越妈,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件季俩,死亡現(xiàn)場離奇詭異,居然都是意外死亡梅掠,警方通過查閱死者的電腦和手機(jī)酌住,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門店归,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人赂韵,你說我怎么就攤上這事娱节。” “怎么了祭示?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵肄满,是天一觀的道長。 經(jīng)常有香客問我质涛,道長稠歉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任汇陆,我火速辦了婚禮怒炸,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘毡代。我一直安慰自己阅羹,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布教寂。 她就那樣靜靜地躺著捏鱼,像睡著了一般。 火紅的嫁衣襯著肌膚如雪酪耕。 梳的紋絲不亂的頭發(fā)上导梆,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天,我揣著相機(jī)與錄音迂烁,去河邊找鬼看尼。 笑死,一個胖子當(dāng)著我的面吹牛盟步,可吹牛的內(nèi)容都是我干的藏斩。 我是一名探鬼主播,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼却盘,長吁一口氣:“原來是場噩夢啊……” “哼灾茁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起谷炸,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤北专,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后旬陡,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拓颓,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年描孟,在試婚紗的時候發(fā)現(xiàn)自己被綠了驶睦。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片砰左。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖场航,靈堂內(nèi)的尸體忽然破棺而出缠导,到底是詐尸還是另有隱情,我是刑警寧澤溉痢,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布僻造,位于F島的核電站,受9級特大地震影響孩饼,放射性物質(zhì)發(fā)生泄漏髓削。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一镀娶、第九天 我趴在偏房一處隱蔽的房頂上張望立膛。 院中可真熱鬧,春花似錦梯码、人聲如沸宝泵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽儿奶。三九已至,卻和暖如春罢坝,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背搅窿。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工嘁酿, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人男应。 一個月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓闹司,卻偏偏與公主長得像,于是被迫代替她去往敵國和親沐飘。 傳聞我的和親對象是個殘疾皇子游桩,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容