职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 428|回复: 0

CyanogenMod源代码下载及编译

[复制链接]
江波 发表于 2011-8-24 10:42 | 显示全部楼层 |阅读模式
下载CM源代码其实跟......
推荐链接 见证又一个......


下载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代码  
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  

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代码  
curl http://android.git.kernel.org/repo > ~/bin/repo   
chmod a+x ~/bin/repo  

curl http://android.git.kernel.org/repo > ~/bin/repo
chmod a+x ~/bin/repo
用下载的repo下载Cyanogenmod源代码

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

repo init -u git://github.com/CyanogenMod/android.git -b gingerbread
repo sync -j16 这里说一下repo sync 这个过程那是相当的慢的。使用repo sync -jn,n表示同时打开的网络链接数,开启多个网络连接来下载,这样速度会有所提升的。

4、下面开始编译源代码
首先,需要将你的手机的USB调试打开,并连接到电脑。

Java代码  
cd ~/cyanogenmod/device/samsung/crespo   
./extract-files.sh  

cd ~/cyanogenmod/device/samsung/crespo
./extract-files.sh 然后
Java代码  
cd ~/cyanogenmod/vendor/cyanogen   
./get-rommanager  

cd ~/cyanogenmod/vendor/cyanogen
./get-rommanagerJava代码  
./extract-google-files  

./extract-google-files 5、拷贝一个文件,注意名字要一致
Java代码  
cp ~/cyanogenmod/vendor/cyanogen/products/cyanogen_crespo.mk  ~/cyanogenmod/buildspec.mk   

cp ~/cyanogenmod/vendor/cyanogen/products/cyanogen_crespo.mk  ~/cyanogenmod/buildspec.mk  6、在cyanogenmod根目录下执行脚本,配置一下变量
Java代码  
. build/envsetup.sh   
或者   
source build/envsetup.sh  

. build/envsetup.sh
或者
source build/envsetup.sh 7、Lunch一下,选择你要编译的版本
Java代码  
lunch cyanogen_crespo-eng   
或者   
lunch   
这样会出现选项,选择你要编译的选项  

lunch cyanogen_crespo-eng
或者
lunch
这样会出现选项,选择你要编译的选项 8、开始编译
Java代码  
make -j4 CYANOGEN_WITH_GOOGLE=true otapackage  

make -j4 CYANOGEN_WITH_GOOGLE=true otapackage 9、执行一下
Java代码  
./vendor/cyanogen/tools/squisher   

./vendor/cyanogen/tools/squisher  
这样就会在~/cyanogenmod/out/target/product/crespo下有一个update的zip包,那个就是你编译生成的了。
你可以将其刷到手机上
其实CM的一个好处就是不用你自己再编译内核源码,并且直接生成zip包,免去了制作zip包的麻烦了

如果没有手机,可以用模拟器测试一下,将kernel/cm-kernel/arch/arm/boot目录下的zImage拷贝的一个文件夹中,注意,你要安装了sdk才行,还有下载一个fastboot小工具
Java代码  
adb reboot bootloader   
./fastboot boot zImage   

adb reboot bootloader
./fastboot boot zImage  然后就等着看效果了

您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-4-28 13:48 , Processed in 0.110016 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表