下載最新的CM源碼

來源:互聯網
上載者:User

下載CM原始碼其實跟下載google的純Android原始碼是類似的,下面的是CM的官方網站,你要先下載你的手機對應的ROM,放入SDCARD根目錄,以防萬一。

http://www.cyanogenmod.com/

 

下面再介紹一個網站:http://forum.xda-developers.com/index.php

這是XDA開發人員論壇,裡面高手如雲,會對你有協助的

 

現在開始告訴大家如何下載源碼、編譯源碼、並將其刷到手機上

 

1、安裝需要的軟體

我用的是ubuntu 11.04

sudo apt-get install <軟體列表>

下面是軟體列表:

Java代碼  
  1. git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev squashfs-tools build-essential zip curl libncurses5-dev zlib1g-dev sun-java6-jdk pngcrush schedtool  

 注意:如果JDK無法安裝的話,可以自己下載,或者參考我的這篇部落格:

http://hualang.iteye.com/blog/1132207

 

2、建立目錄

mkdir -p ~/cyanogenmod

用於存放下載後的原始碼

 

3、開始下載嘍

 

Java代碼  
  1. curl http://android.git.kernel.org/repo > ~/bin/repo  
  2. chmod a+x ~/bin/repo  

 用下載的repo下載Cyanogenmod原始碼

 

Java代碼  
  1. repo init -u git://github.com/CyanogenMod/android.git -b gingerbread  
  2. repo sync -j16  

 這裡說一下repo sync 這個過程那是相當的慢的。使用repo sync -jn,n表示同時開啟的網路連結數,開啟多個網路連接來下載,這樣速度會有所提升的。

 

4、下面開始編譯原始碼

首先,需要將你的手機的USB調試開啟,並串連到電腦。

 

Java代碼  
  1. cd ~/cyanogenmod/device/samsung/crespo  
  2. ./extract-files.sh  

 然後

Java代碼  
  1. cd ~/cyanogenmod/vendor/cyanogen  
  2. ./get-rommanager  
Java代碼  
  1. ./extract-google-files  

 5、拷貝一個檔案,注意名字要一致

Java代碼  
  1. cp ~/cyanogenmod/vendor/cyanogen/products/cyanogen_crespo.mk  ~/cyanogenmod/buildspec.mk   

 6、在cyanogenmod根目錄下執行指令碼,配置一下變數

Java代碼  
  1. . build/envsetup.sh  
  2. 或者  
  3. source build/envsetup.sh  

 7、Lunch一下,選擇你要編譯的版本

Java代碼  
  1. lunch cyanogen_crespo-eng   
  2. 或者  
  3. lunch  
  4. 這樣會出現選項,選擇你要編譯的選項  

 8、開始編譯

Java代碼  
  1. make -j4 CYANOGEN_WITH_GOOGLE=true otapackage  

 9、執行一下

Java代碼  
  1. ./vendor/cyanogen/tools/squisher   

 

這樣就會在~/cyanogenmod/out/target/product/crespo下有一個update的zip包,那個就是你編譯產生的了。

你可以將其刷到手機上

其實CM的一個好處就是不用你自己再編譯核心源碼,並且直接產生zip包,免去了製作zip包的麻煩了

 

如果沒有手機,可以用模擬器測試一下,將kernel/cm-kernel/arch/arm/boot目錄下的zImage拷貝的一個檔案夾中,注意,你要安裝了sdk才行,還有下載一個fastboot小工具

Java代碼  
  1. adb reboot bootloader   
  2. ./fastboot boot zImage   

 然後就等著看效果了

*************************************

該教程大量參考了slax大神和G1的NOirBRight大神的教程(因為有一些東西都過時了,會給部分讀者造成困擾)。
   
首先先安裝一個ubuntu,10.10(我用的是10.10,你有其他需求下新版本的也行,分區建議40g+)。
安裝完以後,可以先配置一下源。
這兒羅嗦幾句。
http://code.google.com/p/ailurus/downloads/list
建議下載這個軟體,格式是deb直接安裝就行,這個相當於windows的最佳化大師,裡面有一個源列表,能幫你測試出速度最快的源,勾選上以後就能直接改變源的檔案了,不用你開啟檔案再修改儲存了。

接下來就是環境的組建了。
JDK
到sun公司的官網下載jdk。
我下的是
jdk-6u24-linux-i586.bin。
這個檔案啟動並執行時候是在目前的目錄安裝的,所以找一個你想安裝的目錄,我用的是/usr/lib/jvm/java,
代碼:

  1. cd ..
  2. cd usr/lib
  3. mkdir jvm
  4. cd jvm
  5. mkdir java
  6. cd java

複製代碼

(然後把檔案jdk-6u24-linux-i586.bin複製進去。)

  1. Chmod u+x jdk-6u24-linux-i586.bin
  2. ./jdk-6u24-linux-i586.bin

複製代碼

螢幕持續滾動,直到讓你輸入yes/no,當然yes,斷行符號。

安裝結束後:

  1. gedit /etc/profile

複製代碼

在開啟的檔案最後添上:
#set java environment
JAVA_HOME=/usr/lib/jvm/java/jdk1.6.0_24
export JRE_HOME=/usr/lib/jvm/java/jdk1.6.0_24/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
(配置系統java環境)

重啟,檢測java:

  1. java -version

複製代碼

出現:
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) Server VM (build 19.1-b02, mixed mode)
就代表安裝成功了。

Sdk

去android官網下載android-sdk_r10-linux_x86.tgz
完了以後直接解壓縮,得到android-sdk-linux_x86檔案夾。將檔案夾放到一個你想放的地方,比如我直接放在了案頭上(/root/案頭/android-sdk-linux_x86)。
這需要運行一些代碼,才能獲得一些常用的工具,如adb等,如下:

  1. cd /root/案頭/android-sdk-linux_x86
  2. cd tools
  3. ./android

複製代碼

會開啟一個視窗,選擇一些需要的包,像sdk tools和sdk platform-tools等,網路好的話,下載速度會快點。

完了以後繼續改變下全域變數,代碼:

  1. gedit ~/.bashrc

複製代碼

開啟後添加:
#set path for android sdk tools
export PATH=$PATH:/root/案頭/android-sdk-linux_x86/tools/
export PATH=$PATH:/root/案頭/android-sdk-linux_x86/platform-tools/
後面的一些檔案夾類似,這個就可以在終端中用sdk的工具了。

檢測,連上你的手機,代碼:

  1. adb devices

複製代碼

會出現一串數字和字母的序號的顯示的話,即表示SDK安裝成功。

軟體的安裝
第一步配置的源在這就有效果了,下面列出需要安裝的常用軟體:
• git-core
• gnupg
• flex
• bison
• gperf
• libsdl-dev
• libesd0-dev
• libwxgtk2.6-dev
• build-essential
• zip
• curl
• libncurses5-dev
• zlib1g-dev
• valgrind
• libreadline5-dev

用第一個做例子,代碼:
i. 在主目錄下建立一個檔案夾,作為源碼的存放目錄
代碼:

  1. apt-get install git-core

複製代碼

然後等一螢幕的英文,會讓你選擇y/n的,輸入y後,安裝完成。
其他的軟體類似。

源碼同步
代碼:

  1. cd ~
  2. mkdir bin
  3. gedit ~/.bashrc

複製代碼

開啟後在最後添加:
export PATH=$PATH:~/bin
儲存退出。
完了以後繼續代碼:

  1. curl http://android.git.kernel.org/repo > ~/bin/repo
  2. chmod a+x ~/bin/repo
  3. cd ~
  4. mkdir cm
  5. cd cm  

複製代碼

(在主目錄下建立一個cm檔案夾用於存放cm7的源碼)

  1. repo init -u git://github.com/cyanogen/android.git -b gingerbread

複製代碼

打完上面的命令後過程比較短,結束後會讓你填一下名字和郵箱,填完就ok了。

再接下來開始同步源碼。
在cm檔案夾裡建立一個檔案do.sh
用文本編輯它,複製下面的代碼進去:

  1. #!/bin/sh
  2. repo sync -j16
  3. while [ $? -ne 0 ]
  4. do
  5. repo sync -j16
  6. done

複製代碼

(上面的16表示同時執行幾個線程,一般下載都有峰值的,弄太大也沒有效果)
儲存,完了以後繼續在終端寫代碼:

  1. cd ~
  2. cd cm
  3. ./do.sh

複製代碼

終端開始跳動英文,就表示開始同步了(這個檔案可以重複執行,就是說電腦關機了(或者關閉終端了),重新開機後(開啟終端),再執行一次就直接繼續下載了,不用擔心重複下載的問題。

基本就是這些了,有問題的可以直接回複。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.