android源碼下載以及編譯自己的ROM


android源碼下載以及編譯自己的ROM

最近發現kernel.org被牆了,為什么這種網站也能被牆了?

要想下載源碼的話,只能繞過去了。下面是我從網上搜索到的一些下載方法;

==============================================================================================

原文鏈接是:http://cache.baidu.com/c?m=9d78d513d98316ed05fa950e1a67a371685497153ac0a61f6b93d3169c3e1d070571e2c83a3f46599699223a52f95e5c9da177246b1420c0c79fce578be6d77471d574626d4bc61a43d11ea4ca5b24c524905ce2a5&p=882a9f0c909d12a058aedc3d56&user=baidu&fm=sc&query=repo%CF%C2%D4%D8&qid=fe5fa7bb12281bb9&p1=1

kernel.org無法訪問導致android的源碼無法下載,這是另外一個git服務器的android源碼的repo文件。 

操作如下

$ curl "http://php.webtutor.pl/en/wp-content/uploads/2011/09/repo" > ./repo //獲取repo

$ chmod a+x repo

$ PATH= ~/omap4/L27.12.1-P2/mydroid:$PATH

下面就是獲取源碼了:

repo init -u git://git.omapzoom.org/platform/omapmanifest.git -b 27.x -m RLS27.12.1-P2_Gingerbread.xml

repo sync

################################################

################################################

另外,如何編譯自己的ROM呢?現在網上找到很多第三方的ROM,比如MIUI,CM,OXYGEN都是如何搞出來的?

終於,從CM官方wiki上找到答案。大家可以從上面下載源碼,然后自己編譯玩玩。

http://wiki.cyanogenmod.com/wiki/HTC_Desire_(GSM):_Compile_CyanogenMod_(Linux)

編譯一般流程: source build/envsetup.sh -> lunch -> m | mm | mmm

我自己用G7(必須要ship off才行)試過下面這種搭配:

1 boot.img用CM最新的,通過fastboot flash boot xxxx/boot.img方式燒寫boot

2 system.img用google源碼編譯,下面是大體步驟

  2.1 source build/envsetup.sh --->設置環境變量

  2.2 choosecombo,選擇默認

  2.3 export TARGET_PRODUCT=full_passion  這個是官方源碼提供的HTC Passion的樣板(在device/htc目錄下),

  2.4 make systemimage。這樣就可以編譯system.image了。這個速度還行,4核,1.8G內存,虛擬UBUNTU10.04,大概30分鍾左右

  2.5 fastboot flash system xxxx/system.img,把system燒上去

 3 問題解決

  1 android framework肯定跑不起來,原因是audio沒有正確的so,所以跑不起來。修改方法,只能換成使用GENERIC_AUDIO方式了。

 2 按鍵不是很正常。沒關系,下載miui的G7 update包,解開,將system/usr/keychars/bravo-keypad.kcm.bin 和system/usr/keylayout/bravo-keypad.kl 通過adb push到手機對應目錄下。

4 最終

  能跑,但是速度很慢,因為我編的是eng版。這個可能不是最終的原因。我發現顯示有點問題,老是閃,估計是顯示那塊的libgalloc.so有問題,可能得用G7的。

 不過終於能自己編譯ROM了,以后定制化就方便多了。

下一步要基於CM的版本試試看。

################################################

################################################

1. htc rom刷機步驟如下:

     adb reboot bootloader

     sudo `which fastboot` flash zip **_partial.zip

     sudo `which fastboot` flash zip **_sign.zip

     sudo `which fastboot` reboot

若是htc手機,fastboot 改爲 ./htc_fastboot

  sudo ./htc_fastboot flash zip 333397-001_M7_Generic_WWE_K442_CRC_Sense60_Stable_MR2_partial.zip
  ls
  sudo ./htc_fastboot flash zip 333397-001_M7_Generic_WWE_K442_CRC_Sense60_Stable_MR2_signed.zip

2. 刷機步驟如下:

修改Framework源碼之後,可以通過以下批處理命令將編譯後的系統文件燒到模擬器中去:

#!/bin/sh

ANDROID_SRC_DIR='/work/aosp'

cd ${ANDROID_SRC_DIR}

EMU_KERNEL=" ./prebuilts/qemu-kernel/arm/kernel-qemu"

#EMU_KERNEL=" ./out/target/product/generic/kernel-qemu"

SYS_IMG=" ./out/target/product/generic/system.img"

RAD_IMG=" ./out/target/product/generic/ramdisk.img"

CACHE_IMG=" ./out/target/product/generic/cache.img"

DATA_IMG=" ./out/target/product/generic/userdata.img"

EMU_BIN="./prebuilts/android-emulator/linux-x86_64/emulator"

#####-data ${DATA_IMG}

${EMU_BIN} -avd AVD_4.0 -kernel ${EMU_KERNEL} -system ${SYS_IMG} -ramdisk ${RAD_IMG} -cache ${CACHE_IMG} 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM