国产精品久久久亚洲_黄色片视频在线播放_欧美激情视频一区二区三区_youjizz.com亚洲

安卓清理大師
Recovery移植之高級小白教程——Recovery的編譯
發(fā)布日期:2014/5/13 來源:網(wǎng)絡(luò) 編輯:我一直這么叼 41788 閱讀 2評論

 

       目前一直在學習源碼方面的知識,前段時間剛剛搞定了recovery的移植。這方面的資料真實少之又少啊,谷歌了幾天,文章也就那幾篇而已,更別提國內(nèi)的資料了。你讓我們熱愛學習的小白情何以堪。于是乎就開始動手了,編譯的過程中,自己做了一些隨筆的記錄。把自己遇到的一些問題和解決辦法都記錄了下了,放在自己的筆記里了。今天整理出來,和大家共享一下。

       本教程是針對有一定基礎(chǔ)的人。如果你不會Ubuntu,不會環(huán)境的搭建。那你還是先學習一下吧。裝Ubuntu各種各樣的教程,網(wǎng)上一找一大堆。

       教程所用的系統(tǒng)為Ubuntu12.04,示例機型為中興N880E。源碼目錄為~/android/system/。

       碼字不容易,你懂的。。。。。。。

       教程開始:

       源碼的同步大家可以看官方文檔,教程直接從源碼同步完后開始。

       1、同步源碼到最新,我同步的源碼目錄為~/android/system/,要改為自己的源碼目錄,下面每一步也一樣
·         cd ~/android/system/
·         repo sync -j16



 

       2、更新完成后,執(zhí)行下面命令,完成環(huán)境的安裝
·         ./build/envsetup.sh

 




 

       輸出結(jié)果:

http://e.hiphotos.baidu.com/album/pic/item/c995d143ad4bd113b79babec5aafa40f4afb059d.jpg

       3、下一步,make我們后面要用到的工具
·         make -j4 otatools

       輸出結(jié)果:

http://f.hiphotos.baidu.com/album/pic/item/b8014a90f603738d741c10fcb31bb051f919ec9e.jpg

 

 

 

       執(zhí)行完成后的輸出:

http://c.hiphotos.baidu.com/album/pic/item/50da81cb39dbb6fde0eff9f80924ab18962b37b3.jpg

       會生成out目錄,在/out/host/linux-x86/bin中有后面要用到的工具。

       4、將/out/host/linux-x86/bin加入環(huán)境變量,變量具體位置要改成你的:

       gedit ~/.bashrc

       在文本最后添加:

       export PATH=$PATH: ~/android/system/out/host/linux-x86/bin

http://b.hiphotos.baidu.com/album/pic/item/960a304e251f95ca40fa8068c9177f3e660952e4.jpg

       保存退出,執(zhí)行下面命令,讓剛加的環(huán)境變量生效:

       source ~/.bashrc

       4、從官方包中,別人的ROM包也可以,拿出boot.img。我放到了~/android/目錄

       5、開始建立我們N880E的device目錄:

       ./build/tools/device/mkvendor.sh zte n880e ~/android/boot.img

       命令參考:

       ./build/tools/device/mkvendor.sh device_manufacturer_name device_name /your/path/to/the/boot.img

       命令輸出為:

http://e.hiphotos.baidu.com/album/pic/item/94cad1c8a786c917eb4c40e7c93d70cf3ac757a4.jpg

       此時在/device/zte/中就會有你的機型n880e了,里面有你的配置文件:AndroidBoard.mk,AndroidProducts.mk, BoardConfig.mk, device_.mk, kernel, system.prop,recovery.fstab, and vendorsetup.sh.

       6、修改配置文件:

       在這里很重要的一個文件就是recovery.fstab,是你手機里各個設(shè)備分區(qū)對應的掛載點,可以理解為手機的分區(qū)表。如果這個文件有錯誤,那么進入recovery后,會提醒分區(qū)掛載失敗。

       這個文件我們可以從官方的recovery.img提取出來。也可以直接解包別人編譯好的recovery,得到recovery.fstab

       當然,我們也可以自己動手寫。目前,自己也沒發(fā)現(xiàn)什么簡潔一點的辦法。我是查看刷機包中的updater-script文件中各個分區(qū)的掛載點和

       cat /proc/mount

       輸出結(jié)果:

http://e.hiphotos.baidu.com/album/pic/item/94cad1c8a786c917eb0c40e7c93d70cf3ac757e4.jpg

cat /proc/partitions

 

       輸出結(jié)果:

http://h.hiphotos.baidu.com/album/pic/item/024f78f0f736afc3b65a23bbb319ebc4b645129d.jpg

       一個個排除定位出來的。

       大家有好的辦法,可以共同探討。

       這里有一個分區(qū)表比較全的recovery.fstab,大家可以按照自己手機的分區(qū)表修改。

       7、開始編譯,執(zhí)行命令:

       ./build/envsetup.sh && lunch full_n880e-eng

       (把n880e替換為自己的機型)

       輸出結(jié)果:

http://f.hiphotos.baidu.com/album/pic/item/d0c8a786c9177f3ef27beed370cf3bc79e3d56a4.jpg

       下一步命令,編譯開始:

       make -j4 recoveryimage

       最后成功時輸出結(jié)果:

http://h.hiphotos.baidu.com/album/pic/item/c8177f3e6709c93de7bd1c299f3df8dcd00054a4.jpg

       輸出的目錄為:out/target/product/n8880e/recovery.img文件,就是我們要的。

       NOTE:

       1、 編譯時間:實體機,一兩分鐘的樣子(i3-380、2GBDDR3)

       2、 異常處理:(都是自己編譯過程中遇到的筆錄,非官方)

       錯誤1:

       執(zhí)行

       ./build/envsetup.sh

       命令后,提示某些設(shè)備文件不存在。

       這是自己當初在CM7源碼下編譯出現(xiàn)的,因為自己沒有把所有的設(shè)備的源碼同步下來,一些設(shè)備自己在~/android/system/.repo/manifest.xml中用注釋掉了,所以同步完源碼后要修改vendor/cyanogen/products/AndroidProducts.mk 文件,把沒有同步的設(shè)備刪除掉。重新執(zhí)行命令就行了。

       錯誤2:

       在編譯的最后,提示出錯 “Boot.img is too large”,自己當時的解決辦法是修改BoardConfig.mk:

       # fix this up by examining /proc/mtd on a running device

       BOARD_BOOTIMAGE_PARTITION_SIZE := 0x01000000

       BOARD_RECOVERYIMAGE_PARTITION_SIZE := 0x01000000

       BOARD_SYSTEMIMAGE_PARTITION_SIZE := 0x19000000

       BOARD_USERDATAIMAGE_PARTITION_SIZE := 0xA0000000

       BOARD_FLASH_BLOCK_SIZE := 131072

       將后面的十六進制改為自己手機分區(qū)的大小,要把兆轉(zhuǎn)換為KB,再轉(zhuǎn)換為十六進制,然后替換0x后面的數(shù)字(0x表示十六進制)。

       另一種解決辦法,就在下面幾篇參考文檔中剛看的,未實踐:

       打開源碼目錄中的Build/Core/definitions.mk,將1688 – 1694行替換為:

       # if [ "$total" -gt "$maxsize" ]; then \

       # echo “error: $printname too large ($total > [$(2) - $reserve])”; \

       # false; \

       #el

       if [ "$total" -gt $((maxsize - 32768)) ]; then \

       echo “WARNING: $printname approaching size limit ($total now; limit $maxsize)”; \

       fi \

       然后保存。重新編譯即可。

       錯誤3:

       執(zhí)行7中的第一個命令時,提示lunch未安裝:

http://a.hiphotos.baidu.com/album/pic/item/5ab5c9ea15ce36d3e5559fee3af33a87e850b19e.jpg

       解決辦法:

       執(zhí)行

       source build/envsetup.sh

       再執(zhí)行上面命令就OK 了。

http://d.hiphotos.baidu.com/album/pic/item/71cf3bc79f3df8dc4a729d4fcd11728b461028a4.jpg

       更進一步,自己也在學習中,還未實踐的:

       recovery_ui.c 這個文件里面是手機各按鍵對應的按鍵值,這樣寫入之后才能正確選擇按鍵。對按鍵的修改自己找了一些資料還在進一步學習中。

       參考資料:

       Porting CWM to other devices:

       http://www.acsyndicate.net/how-to-porting-cwm-to-other-devices-windows/

       Creating a custom ClockWorkMod (CWM)Recovery image:

       http://www.twobitcoder.com/?p=158

       Porting Clockwork Recovery to ourGarminfone:

       http://mygarminfone.blogspot.com/2011/05/porting-clockwork-recovery-to-our.html

       Porting Clockwork Recovery to New Devices:

       http://www.koushikdutta.com/2010/10/porting-clockwork-recovery-to-new.html

發(fā)表評論
點擊換圖
發(fā)表
国产精品久久久亚洲_黄色片视频在线播放_欧美激情视频一区二区三区_youjizz.com亚洲
99精品国产一区二区| 欧美激情亚洲精品| 国产欧美日韩精品专区| 国产中文字幕亚洲| 国产日韩欧美大片| 国产美女99p| 成人精品视频在线| 国产精品a久久久久久| 欧美激情在线视频二区| 欧美激情综合色综合啪啪五月| 欧美激情喷水视频| 亚洲午夜精品久久久久久人妖| 亚洲一区免费看| 午夜精品在线观看| 人偷久久久久久久偷女厕| 欧美欧美一区二区| 国产一区二区三区精彩视频| www.av中文字幕| 久久精品99| www高清在线视频日韩欧美| www日韩中文字幕在线看| 国产精品美女久久久久久免费| 国产精品电影一区| 亚洲高清视频一区二区| 人人妻人人澡人人爽精品欧美一区 | 国产精品国色综合久久| 一区二区三区av在线| 日韩国产精品一区二区三区| 欧美人与性禽动交精品| 国产免费内射又粗又爽密桃视频| 97人人香蕉| 久久人人爽人人爽人人片亚洲| 久久福利网址导航| 亚洲精品第一区二区三区| 欧美亚洲国产日本| 国产精品亚洲不卡a| www.99久久热国产日韩欧美.com| 精品免费日产一区一区三区免费 | 国产精品久久久久久久久久久久| 亚洲一区二区三区在线观看视频 | 99在线观看| 久久天天躁狠狠躁夜夜躁| 亚洲人体一区| 激情小说综合网| 久久婷婷开心| 麻豆成人在线看| 日本成人在线不卡| 超碰国产精品久久国产精品99| 国产成人精品网站| 午夜精品视频在线| 国产天堂在线播放| 波霸ol色综合久久| 性亚洲最疯狂xxxx高清| 欧美日韩视频免费在线观看 | 欧美日韩不卡在线视频| 97国产精品视频| 国产精品久久激情| 欧美一区二区大胆人体摄影专业网站 | 精品中文字幕乱| 日韩精品无码一区二区三区 | 91精品在线一区| 久久福利视频网| 欧美午夜小视频| 久久国产精品久久| 亚洲wwwav| 成人免费淫片aa视频免费| 国产精品精品视频| 人人做人人澡人人爽欧美| 97福利一区二区| 欧美激情精品久久久久久黑人| 激情内射人妻1区2区3区| 久久久噜噜噜久久| 日本不卡免费新一二三区| 久久这里只有精品23| 亚洲欧洲免费无码| 成人免费在线小视频| 久久99精品久久久久久琪琪| 麻豆久久久av免费| 国产精品久久久久久久久免费 | 欧美一区深夜视频| 日韩在线欧美在线国产在线| 日本丰满少妇黄大片在线观看| 国产福利成人在线| 日韩欧美视频免费在线观看| 久久黄色免费看| 人人做人人澡人人爽欧美| 精品产品国产在线不卡| av一区二区三区在线观看| 国产精品久在线观看| 男女猛烈激情xx00免费视频| 久久精品91久久久久久再现| 青青青免费在线| 精品激情国产视频| 欧美自拍大量在线观看| 久久久国产精品x99av| 欧美精品一区二区三区久久| www高清在线视频日韩欧美| 精品免费视频123区| 久色乳综合思思在线视频| 国产欧美日韩免费看aⅴ视频| 中文字幕人成一区| 久久久一本精品99久久精品66| 动漫一区二区在线| 久久精品国产美女| 黄色特一级视频| 欧美激情精品在线| 68精品久久久久久欧美| 欧美一级特黄aaaaaa在线看片| 91国内在线视频| 日韩精品av一区二区三区| 久久精品中文字幕免费mv| 免费不卡亚洲欧美| 一区二区精品在线| 国产福利一区视频| 精品www久久久久奶水| 欧美成人免费va影院高清| 成人免费在线小视频| 色欲av无码一区二区人妻| 日韩一区二区福利| 国产日韩欧美日韩大片| 亚洲 日韩 国产第一| 精品国产一区av| 国产九九九九九| 亚洲.欧美.日本.国产综合在线| 国产成人亚洲综合91| 黄色高清视频网站| 亚洲第一综合| 国产成人无码一二三区视频| 国产美女在线精品免费观看| 日韩在线三区| 精品伦精品一区二区三区视频| 国产精品91免费在线| 欧美日韩福利在线| 亚洲国产精品久久久久婷蜜芽| 久久久久女教师免费一区| 国产日韩av网站| 日韩欧美亚洲天堂| 欧美日韩第一页| 久久大片网站| 国产女大学生av| 欧洲成人免费视频| 亚洲欧美影院| 国产精品大陆在线观看| 久久亚洲免费| 国产偷人视频免费| 日本va中文字幕| 亚洲一区二区免费| 国产精品二区三区四区| 国产a级片网站| 成人一区二区在线| 免费不卡亚洲欧美| 欧美一级大胆视频| 色综合久久久久无码专区| 精品乱色一区二区中文字幕| 九色综合日本| 99精品免费在线观看| 国产原创欧美精品| 日韩免费精品视频| 亚洲第一在线综合在线| 精品国产免费人成电影在线观...| 久久久久久久久久久免费视频| 99视频免费观看蜜桃视频| 国产一区二区三区乱码| 欧美日韩视频免费在线观看 | 久热精品在线视频| 精品国产一区av| 国产高清在线一区| 7777在线视频| 91精品久久久久久久久久久久久久 | 欧美资源一区| 日韩国产精品一区二区| 一区二区不卡视频| 国产精品福利久久久| 久久精品欧美视频| www亚洲精品| 久久精品成人一区二区三区蜜臀| 91久久综合亚洲鲁鲁五月天| 国产精品一区专区欧美日韩| 国产在线观看欧美| 免费观看国产成人| 国内精品一区二区三区四区| 欧美日韩一区综合| 男女猛烈激情xx00免费视频| 欧美日本韩国国产| 欧美日韩亚洲一区二区三区四区 | 麻豆精品蜜桃一区二区三区| 欧美在线视频一区| 欧美亚洲日本在线观看| 欧美在线视频一二三| 欧美在线日韩精品| 秋霞成人午夜鲁丝一区二区三区 | 国产精品色悠悠| 国产精品免费久久久久久| 国产精品三级美女白浆呻吟| 国产精品视频网站在线观看| 国产精品视频一区二区三区经| 国产成人手机视频| 国产精品国产亚洲精品看不卡| 精品国产乱码久久久久久郑州公司 | 人人妻人人澡人人爽欧美一区双|