Ubuntu编译android源代码---获取源码

    做了一定时间的android应用开发,自己也觉得有必要研究下源码了,第一步当然就是学会下载源码了。经过各种百度谷歌,绕了一大圈,才知道自己目前的需求--下载源码。终于完成各种步骤,现在正在下载中...,趁这个时间,我把自己配置环境的步骤记录一下,以防止自己忘记后又得重新找资料。

---首先在这里感谢这些博客给我参考:

http://blog.csdn.net/speedingboy/article/details/5455037

http://blog.chinaunix.net/uid-20791108-id-3761713.html

http://www.cnblogs.com/xingfuzzhd/archive/2012/09/05/2671973.html

http://blog.csdn.net/legendof1991/article/details/17005849

http://www.cnblogs.com/ouling/archive/2011/09/02/2163829.html

http://lirui.blog.51cto.com/2336974/523876

http://hi.baidu.com/glzlaohuai/item/bd3596c33350cd145050584d

注意:我的前提环境:Ubuntu12.04 -32位,JDK1.7,截至目前最新的源码是android4.4_r1.2

其实最规范的步骤肯定是http://source.android.com/source/downloading.html即官网上的说明了,如果英文好的话,跟着官网一步步来不会有啥问题,而且官网也提供了常见问题的解决方法。

一,添加包

如果你只是下载源码则运行命令:

sudo apt-get install git-core curl

如果你想以后编译源码或内核则运行命令:

64位系统

$ sudo apt-get install git gnupg flex bison gperf build-essential 
  zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev 
  libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 
  libgl1-mesa-dev g++-multilib mingw32 tofrodos 
  python-markdown libxml2-utils xsltproc zlib1g-dev:i386

32位系统

$ sudo apt-get install git-core gnupg flex bison gperf build-essential 
zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev
libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos
python-markdown libxml2-utils xsltproc


二,下载repo

1,在根目录下建立目录bin

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

2,将repo下载到~/bin目录中,并为目录添加执行权限

$ curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo

三,初始化一个Repo客户端

1,创建一个空目录用来存放android源码,名称随便起。

$ mkdir WORKING_DIRECTORY
$ cd WORKING_DIRECTORY

这里有个问题,我用的是virsualbox装的ubuntu,我把目录创建在了ubuntu和主机的共享文件夹里,运行repo init后一直报一个错:[Errno 30] Read-only file system,这个困扰我好久,一直找不到解决方法,后来我把目录创建在别的目录下,问题解决。个人觉得是不是因为是共享文件夹不是真正挂载到ubuntu上的原因,有待补充。

2,运行repo init

获取最新的源代码列表

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

使用 -b 来制定下载哪一个branch

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

这里会提示填写名称和邮箱地址,填写完输入y确认。

四,同步代码

$ repo sync

同步过程中会时常中断,可以执行Ctrl+Z手动中断后,继续 $ repo sync,断点续传。

补充:我刚开始下载速度还可以,后来怎么都链接不到,找到一个方法:

1,找到.repo/manifest/default.xml

修改fetch= "https://android.googlesource.com/"

2,修改/etc/hosts文件,添加

74.125.31.82 www.googlesource.com

74.125.31.82 android.googlesource.com

203.208.46.172 cache.pack.google.com

59.24.3.173cache.pack.google.com

 

 

 

 

posted on 2013-12-03 18:10  lucky_tom  阅读(315)  评论(0编辑  收藏  举报