折雨的天空
android系统的ROM自己做的一个教程
2011-10-28 我好笨

是别人的。

并且需要安装Linux系统。注意,不是简单的修改,而是自己编译。



详细地址是:http://www.embest.net/index.php/archives/384



为了防止他的网页过期,故复制于下面,请尽量参看原版。



本来想下载Android官方源代码,没想到android.git.kernel.org被黑,不能访问,非常遗憾,并因此还郁闷了几天。

后来一想,竟然忘记了CyanogenMod这茬,这可是的的确确的开源啊,我的手机一直也在用CyanogenMod系统的,感觉确实不错。


1.准备

我得环境如下,

Ubuntu10.04.3(64位)

下载CyanogenMod的gingerbread分支

Ubuntu的环境配置大家可以参考http://source.android.com/。如果是新系统可以用脚本 install.tar


这里着重说下Android 2.3以上需要借助JAVA6,安装Java6,推荐如下安装:


sudo add-apt-repository “deb http://archive.canonical.com/ubuntu lucid partner”

sudo add-apt-repository “deb-src http://archive.canonical.com/ubuntu lucid partner”

sudo apt-get update


sudo apt-get install -y sun-java6-jdk


2.安装repo

因为android.git官方已经不能访问,所以我这里提供一个repo文件的下载地址,免的大家到处搜索:http://www.embest.net/repo


把repo拷贝到ubuntu根目录下得bin下

操作方法:


$ mkdir ~/bin $ PATH=~/bin:$PATH 
$ curl http://www.embest.net/repo > ~/bin/repo $ chmod a+x ~/bin/repo

3.ubuntu中环境的配置

JDK前面已经说了,其他的软件列表如下:






1 $sudo apt-get install 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 





这些软件都安装好之后我们开始下载CyanogenMod源码。


4.下载CyanogenMod源码






1 //从用户根目录下开始






2 //创建CyanogenMod文件夹来放置后面所有的代码






3 $mkdir CyanogenMod






4 //获取gingerbread的分支源代码






5 $repo init -u git://github.com/CyanogenMod/android.git -b gingerbread 






6 //同步服务器代码到本地,-j16是多线程,从而能提高下载速度






7 $repo sync -j16





这个过程非常的漫长,大家慢慢的等吧,本人是晚上睡觉的时候下载,第二天早上醒来就Done了。


5.编译源码

在CyanogenMod/device目录下有很多款手机的对应版本:



我手机是中兴V880,进入zte可以看到blade



所以本人决定编译一个我手头上的liberty对应的系统版本,编译完成后我们直接刷机。

第一步:读取手机上的一些私有配置文件






1 $cd CyanogenMod/device/zte/blade






2 $./extract-files.sh





图示如下:



这是读取手机里面.so库文件,所以一定要连接手机,并且adb能通,如果不通,请参考《用手机为Android开发Debug》,或者用我提供的脚本usb.tar


lsusb查看手机PID,


sudo sh usb.sh PID


sudo adb kill-server #如果ADB找不到,请下载SDK


sudo adb start-server #加sudo


例如:sudo sh usb.sh 19d2  #19D2是中兴的PID


第二步:生成编译脚本文件






1 $cd ~/CyanogenMod/vendor/cyanogen 






2 $./get-rommanager






3 $./extract-google-files






4 //复制编译脚本文件到CyanogenMod目录下,后面编译整个系统用的就是这个文件






5 $cp ~/CyanogenMod/vendor/cyanogen/products/cyanogen_blade.mk  ~/CyanogenMod/buildspec.mk





贴上进行时图片:




第三步:编译脚本

回到CyanogenMod目录下,执行脚本。






1 //初始化脚本,这个是后面的重要基础步骤






2 $source build/envsetup.sh






3 //选择编译的产品






4 //这个命令需要一小会儿时间,但是又没提示,耐性等待一下






5 $lunch cyanogen_blade-eng






6 //开始编译






7 $make -j4 CYANOGEN_WITH_GOOGLE=true otapackage





这个过程也是相当的漫长,还好一般情况下我们只是第一次需要项目整个编译,后面只需要编译某个模块。


第四步:生产刷机zip包。






1 ./vendor/cyanogen/tools/squisher





有图为赏:




用这个zip包,我刷到我手机上,一切正常。


6.定制ROM

有了以上的环境后,我们就可以大展手脚,深度定制ROM, 做自己的操作系统,自己的CyanogenMod,自己的MIUI,自己的Android系统。





截图一张。防止图片打不开。



点击查看原图


评论:
南宁婚纱摄影
2012-08-28 09:31 回复
疯了
发表评论:
昵称

邮件地址 (选填)

个人主页 (选填)

内容