android4.0源码下载编译总结

1  弄了快一个星期的时间,搞android的源码编译。虽然说网上已经有网友提供已经下好的打包源码,但自己还是想去试试,看看android源码到底有些啥。其中参考了网上大神的诸多教程,推荐如下:http://www.cnblogs.com/hoji-real/articles/2144892.html,http://hi.baidu.com/hyemiletoe/item/0403f331f12017179cc65ed9,还有官网教程

2  抽出时间来自己写个总结,为备自己的以后的需求,也方便其他的人吧。

3 自己机子的配置:win7 64 模拟机 ubuntu12.04 32 jdk 1.6

  第一步,安装虚拟机加载ununtu,自己曾经考虑过用cygwin下载源码成功过,但编译没成功,后来google啦大神们说,好像是环境不行,只好放弃了

  第二步,打开终端(ctrl+shift+T)安装git,开始的ubuntu是没有自带git所以你需要初始化他的环境。

  

sudo apt-get install build-essential

sudo apt-get install make

sudo apt-get install gcc

sudo apt-get install g++

sudo apt-get install libc6-dev

sudo apt-get install patch

sudo apt-get install texinfo

sudo apt-get install libncurses-dev

sudo apt-get install git-core gnupg

sudo apt-get install flex bison gperf libsdl-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl

sudo apt-get install ncurses-dev

sudo apt-get install zlib1g-dev

sudo apt-get install valgrind

sudo apt-get install python2.5

可能以上有些自带,但提示什么没有就自己下载吧

第三步 新建bin文件并赋予path路径 方便后面的使用

$ mkdir ~/bin
$ PATH=~/bin:$PATH

第四步 下载repo文件,并赋予权限

$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo

$ chmod a+x ~/bin/repo

下载完成后应该有个20几kb的文件。可以自己去看一下有没有成功

第五步 新建一个存放源码的文件夹 (官网:Initializing a Repo client) 可以在home目录下,和bin目录并排,也可以在bin目录里面,后面再说其中的用处和区别

$ mkdir WORKING_DIRECTORY $ cd WORKING_DIRECTORY文件夹WORKING_DIRECTORY可以自己修改 ,我自己的就是android

第六步 初始化所有

  $ repo init -u https://android.googlesource.com/platform/manifest

也可以得到固定的版本

$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1

第六步 开始同步 $ repo sync -jX X 代表线程数目

到此android源码的下载步骤完成,当然其中肯定会出错的(如果没出错,建议你去买彩票,中了记得分我喔),我遇到的最多的错误就是ip限制,network...

 解决办法(copy的)

1. 浏览器登录https://android.googlesource.com/new-password,并用gmail帐号登录;
2. 点击网页上的“允许访问”,得到类似:
machine android.googlesource.com login git-<userName>.gmail.com password <password>  
machine android-review.googlesource.com login git-<userName>.gmail.com password <password>
的信息。
3. 把上面那段信息(<userName>和<password>用自己得到的真实信息)追加到~/.netrc文件结尾(没用该文件则添加);

4. 重新打开一个终端
4. 下载地址的URI更改为https://android.googlesource.com/a/platform/manifest(中间加上了“/a”)。

5.   重新$ repo sync(遇到网络不稳定的时候也可以这么做,表现美终端没有数据走动,一直在那儿闪烁)

源码下载完成后 应该在你的源码路径及WORKING_DIRECTORY目录下有以下文件夹,如果没有,却发现该目录大小已经有几个G了,好吧,你悲剧了,这是因为它没有自动执行checkout命令,可不可以手动checkout出来目前我也没有弄出来(求大神 普及),我的解决办法是,把WORKING_DIRECTORY  文件夹建在bin 里面就好了,重新下载一次就好了。

4 好啦  下面开始android的源码编译(其实就是个配置环境和排错的过程)

1 安装jdk 如果采取官网的办法你是安装不上去的,因为sun的jdk 已经被移除,网上有好多关于ubuntu下安装jdk的教程,我就不在啰嗦了,提供自己的办法 ,直接到 www.oracle.com的官网下载,注意下载自己的合适的版本 完成后切换到该文件所在目录  $sudo install  文件名 

2 配置jdk的环境变量(copy)

vim ~/.bashrc

在.bashrc中新增或整合PATH变量,如下

#java 程序开发/运行的一些环境变量

JAVA_HOME=/usr/lib/jvm/java-6-sun(改成自己的路径)

JRE_HOME=${JAVA_HOME}/jre

export ANDROID_JAVA_HOME=$JAVA_HOME

export CLASSPATH=.:${JAVA_HOME}/lib:$JRE_HOME/lib:$CLASSP ATH

export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin

export JAVA_HOME;

export JRE_HOME;

export CLASSPATH;

HOME_BIN=~/bin/

export PATH=${PATH}:${JAVA_PATH}:${JRE_PATH}:${HOME_BIN};

#echo $PATH;

最后,同步这些变化:

source ~/.bashr设置完成后后检测 $ java—version 如果成功则显示当前的版本号(注意是sun的),不行的 自己接着google吧,不是很难得

3 编译源码

$ source build/envsetup.sh
$ lunch full-eng

$ make -j4第一步一般不会出错的,第二部可能会出现tools.jar 没有找到,这应该是你自己jdk没有装好吧,有时候自己把配置在这个文件里面 $ sudo gedit /etc/profile 配置好啦后 同步 $ sudo source /ect/profile 就成了。第三部 j后面参数应该是你的电脑cpu的核数 可要可不要的(额 就是没写的)

4 到此编译过程结束(简单吧),你如果其中没有出现任何错误的话,建议你 还是去买彩票,分账老规矩。这其他会出现各种各样的error,附上这些error 

解决的办法收集的比较齐全的网址吧  自己对症下药吧 http://hi.baidu.com/hyemiletoe/item/0403f331f12017179cc65ed9 

5 编译完成后 英应该在你的WORKING_DIRECTORY目录下 生成了一个out文件夹,里面就是编译好的源码和镜像文件

6  建一个模拟器出来看看自己编译成果吧 自己的WORKING_DIRECTORY目录下

$ emulator

 

 

 

posted on 2013-04-21 11:07  treemen  阅读(173)  评论(0)    收藏  举报

导航