Ubuntu12.10-amd64系统上搭建Android4.2(JellyBean)源码开发环境
注意:1) 從android4.1開(kāi)始,編譯Android源碼必須使用ubuntu 64位系統(tǒng),所以請(qǐng)預(yù)裝Ubuntu64位操作系統(tǒng)! 建議去ubuntu官網(wǎng)下載 ubuntu-desktop-###-amd64.iso
? ? 2)無(wú)論是虛擬機(jī)安裝Ubuntu,還是真實(shí)安裝Ubuntu,請(qǐng)務(wù)必劃定 >=50GB 的硬盤(pán)空間; 據(jù)不完全統(tǒng)計(jì),Android4.2 源碼需要占據(jù) 25GB-30GB左右的空間,其中 .repo這個(gè)隱藏的文件夾 占據(jù)空間就達(dá)到15GB左右! 其次,編譯Android4.2源碼之后產(chǎn)生的 out 目錄也會(huì)占據(jù)10GB 左右的空間! 最后,Ubuntu系統(tǒng)、eclipse、Android sdk等也會(huì)占據(jù)一部分空間! 所以,預(yù)留足夠的硬盤(pán)空間很重要!
??????? 3) 對(duì)于配置比較低的電腦(內(nèi)存2GB都算低了),如果是真實(shí)安裝Ubuntu,最好分配swap交換分區(qū),大小自己定,2GB以?xún)?nèi)就夠了,多了浪費(fèi)。。。親。。。為啥呢? 因?yàn)榫幾gandroid4.2源碼的webcore模塊時(shí),編譯過(guò)程可能會(huì)由于系統(tǒng)內(nèi)存緊張而停止! 為了不必要的麻煩, 還是分配swap分區(qū)吧。
OK,言歸正傳,開(kāi)始講述Ubuntu12.10-adm64上怎樣搭建 Android4.2 源碼開(kāi)發(fā)環(huán)境吧:
1.? 下載安裝 JDK 1.6
???? 請(qǐng)下載適用于 linux 64位系統(tǒng) 的jdk, 以我下載的 jdk-6u33-linux-x64.bin 為例!? 打開(kāi)終端 CTRL+ALT+T
????
??? 命令執(zhí)行完成后, 繼續(xù)輸入? sudo rm jdk-6u33-linux-x64.bin ,可以刪掉它,已經(jīng)不需要了。
2. 配置 JDK 環(huán)境變量
??? 繼續(xù)輸入以下命令,將自動(dòng)打開(kāi) /etc/profile文件,在文件末尾添加如圖所示內(nèi)容,保存關(guān)閉!
???
?? 注意: 請(qǐng)務(wù)必檢查下 JAVA_HOME 指示路徑是否存在! 輸入下列命令
?
? 可以看到當(dāng)前環(huán)境變量中的jave版本是 Java(TM) SE 標(biāo)準(zhǔn)運(yùn)行庫(kù)環(huán)境,而不是sun jdk運(yùn)行環(huán)境!如果配置失敗或者 在 /etc 目錄下 沒(méi)有執(zhí)行source profile命令,則不會(huì)出現(xiàn)上圖所示? 內(nèi)容! 特別注意的是,如果配置失敗, 一定要排除錯(cuò)誤,否則重啟后極有可能無(wú)法進(jìn)入U(xiǎn)buntu,哪怕是在Ubuntu的恢復(fù)模式下, 輸入類(lèi)似 cd 、sudo 這樣的常用命令都無(wú)效! 所以,? 一定要確保配置成功后,再重啟Ubuntu。
3.? 下載和配置Android SDK
? 1)去android官網(wǎng)下載 適用于 linux系統(tǒng)的 Android SDK 工具包(32位和64位的通用),解壓到? ~/tools/ 目錄,即解壓到個(gè)人 主文件夾 下的 tools 目錄!
? 2)配置Android SDK環(huán)境變量
??
? 保存退出后, 先輸入命令? source .profile ,然后輸入命令 android ,如果彈出Android SDK Manager窗口就表示配置成功!?
4. 下載、編譯android源碼
?? 1) 安裝依賴(lài)庫(kù)!
CTRL+ALT+T打開(kāi)終端,執(zhí)行下列命令:
?????? (我直接從官網(wǎng) http://source.android.com/source/initializing.html 復(fù)制的命令,如果部分軟件包無(wú)法安裝,就把命令中的這些軟件包刪掉重新執(zhí)行喲!)
??????? $ sudo apt-get install git gnupg flex bison gperf build-essential \
? ? zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
? ? libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
? libgl1-mesa-dev g++-multilib mingw32 tofrodos \
? python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1/usr/lib/i386-linux-gnu/libGL.so
2) 下載并配置 repo
To install Repo:
Make sure you have a bin/ directory in your home directory and that it is included in your path:
$ mkdir ~/bin$ PATH=~/bin:$PATH
Download the Repo tool and ensure that it is executable:
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo$ chmod a+x ~/bin/repo
3)初始化 repo
?????
?4) 同步代碼
???? 執(zhí)行命令? repo sync?? , 這個(gè)時(shí)候才開(kāi)始下載代碼喲! 慢慢等待吧。。。剩下的就看你網(wǎng)速如何了。。。親。。。
?
5)?? 編譯源碼
???? 依次執(zhí)行下列命令:
???? cd? ~/myandroid
???? source build/envsetup.sh 或?? . build/envsetup.sh
???? lunch full-eng
???? make -j4
??? 如果編譯源碼過(guò)程中出現(xiàn)錯(cuò)誤,自己百度或google去吧。。。解決之,然后繼續(xù)執(zhí)行命令 make -j4
-----------------------------------------------------------over--------------------------------------------------------
結(jié)束語(yǔ): 源碼編譯完成后,會(huì)得到幾個(gè)img, 這幾個(gè)img可以在模擬器中安裝調(diào)試;但是如果想使用到 真機(jī)環(huán)境,則需要參考官方文檔
?http://source.android.com/source/building-devices.html, 下載并編譯相應(yīng)機(jī)型的kernel 和驅(qū)動(dòng),由于其中支持的機(jī)型 我都沒(méi)有,
我也就沒(méi)有去嘗試。。。
??? 寫(xiě)這篇博文的目的是為了給下一篇博文做準(zhǔn)備,下一篇博文將介紹如何 下載并編譯 CyanogenMod提供的 android4.2.2源碼,針對(duì)CyanogenMod
支持的機(jī)型 以及 不支持的機(jī)型(主要采用armv6框架的cpu),分別講敘 如何 編譯 出這些機(jī)型的ROM,即網(wǎng)上盛行的 cm10.1,編譯完成即可刷機(jī)使用喲!
敬請(qǐng)期待!!!
????
??????
轉(zhuǎn)載于:https://www.cnblogs.com/tomsen/archive/2013/05/29/bjwang00001.html
總結(jié)
以上是生活随笔為你收集整理的Ubuntu12.10-amd64系统上搭建Android4.2(JellyBean)源码开发环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何估算代码量_千万级用户的大型网站,应
- 下一篇: python response.json