现在的位置: 首页 > 综合 > 正文

Android ROM研究—CyanogenMod源代码下载及编译

2013年08月20日 ⁄ 综合 ⁄ 共 1771字 ⁄ 字号 评论关闭

下载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 https://dl-ssl.google.com/dl/googlesource/git-repo/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   

 然后就等着看效果了

抱歉!评论已关闭.