日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

如何構(gòu)建Android 1.5系統(tǒng)映像

系統(tǒng) 2137 0

請先參考 如何取得Android源代碼 一文,通過repo來取得當(dāng)前最新的android主線代碼(或者拿名為android-SDK-1.5_r1的tag也無妨)。

1、Host OS編譯環(huán)境準(zhǔn)備
在取得android源代碼和編譯內(nèi)核的過程中,我們已經(jīng)至少安裝了 cURL、 git-core、ncurses-dev、 build-essential等軟件包(Python2.5已經(jīng)捆綁在Ubuntu8.04中),不過這還不夠,要完成Android代碼樹的編譯,我 們還需要flex、bison、gperf、valgrind(可選)、libsdl-dev、libesd0-dev、libwxgtk2.6- dev、zlib1g-dev等軟件包,好在apt-get可以幫我們一次搞定。
sudo apt-get install flex bison gperf valgrind libsdl-dev libesd0-dev libwxgtk2.6-dev zlib1g-dev

另外,編譯過程中還需要用到JDK 5.0(注意JDK6.0不被支持),請到 Sun的官方網(wǎng)站 下載后安裝。

2、工具鏈和環(huán)境變量
把JDK5.0加進(jìn)$PATH,如:
$export PATH=$PATH:/home/william/jdk5.0/bin
然后可以用java -version來確認(rèn)java的版本

除此之外,編譯內(nèi)核所作的環(huán)境變量和工具鏈的設(shè)置在編譯系統(tǒng)映像時并不需要,這都由android的編譯腳本搞定了。

3、關(guān)于編譯選項
在build/core目錄下的envsetup.mk定義了target的體系結(jié)構(gòu)和OS,默認(rèn)為arm和linux,我們暫時不涉及移植,所以不需要修改。

4、開始編譯
做完上面的準(zhǔn)備,在代碼樹的根目錄下敲make就可以了,編譯的過程大約需要持續(xù)1~2個小時,總計需要大約3.5G的可用空間。

5、測試生成的image
編譯完成以后如果想在模擬器中運(yùn)行,除了kernel的映像文件以外,所需的其他3個映像文件分別是:(位于out/target/product/generic/目錄)
ramdisk.img : 包含了在模擬器中啟動Android所需的文件系統(tǒng)
system.img : 初始的Android系統(tǒng)映像,包含了程序和庫文件
userdata.img : 初始的用戶數(shù)據(jù)映像文件
模 擬器會首先到指定的AVD所在的目錄查找是否有userdata映像存在,如果沒有的話就會基于初始的userdata.img來創(chuàng)建一個,加載這3個映 像文件后,它會把system.img和userdata.img分別掛載載到ramdisk文件系統(tǒng)中的system和userdata目錄下。所有的 用戶數(shù)據(jù)都會被保存在AVD目錄下的userdata-qemu.img中,初始的用戶數(shù)據(jù)映像文件并不會被修改。

通過命令行參數(shù)啟動模擬器,加載我們編譯的系統(tǒng)映像的方法:
首先設(shè)定ANDROID_PRODUCT_OUT環(huán)境變量,指向out/target/product/generic/目錄 (Update:實(shí)驗證明這一步是沒有必要的),然后運(yùn)行
emulator @1.5_L2 -system system.img -ramdisk ramdisk.img
或者我們加上-kernel參數(shù),用自己編出來的kernel來啟動

系統(tǒng)成功啟動的截圖:

編譯Android系統(tǒng)映像雖然花費(fèi)了不少的時間,不過總體來說還是比較簡單的,Android的build system幫助我們搞定了大部分的設(shè)置。

如何構(gòu)建Android 1.5系統(tǒng)映像


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 新和县| 枝江市| 光泽县| 绥中县| 鄂温| 措美县| 秭归县| 固阳县| 聂荣县| 连州市| 游戏| 攀枝花市| 青田县| 潜山县| 高邑县| 浙江省| 镇康县| 贡山| 齐齐哈尔市| 阳谷县| 平昌县| 同德县| 泾源县| 喜德县| 晋宁县| 石台县| 潢川县| 惠水县| 叙永县| 镇雄县| 新泰市| 济阳县| 普陀区| 左云县| 普兰县| 周口市| 墨竹工卡县| 阳朔县| 安国市| 江陵县| 西昌市|