Android4.2源码下载过程

在Ubuntu 12.04上下载Android4.2源码

下载过程分为以下几个步骤

1、安装curl

 在终端中执行 sudo apt-get install curl

2、创建一个~/bin目录,并添加到环境变量中

$ mkdir ~/bin

$ PATH=~/bin:$PATH

3、下载repo脚本并修改权限为可执行

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

$ chmod a+x~/bin/repo

4、创建一个保存android源码的目录,修改为最大权限(这个是我自己增加的一个操作,怕以后操作权限不足等麻烦),并进入到该目录下

$ mkdir /opt/android_source

$ sudo chmod –R 777 /opt/android_source

$ cd  /opt/android_source

5、初始化repo,并选择要下载的分支(版本)

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

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

备注:在这过程中需要输入你的姓名、邮箱等信息。感觉只要输入就可以了,我输入了一个随意名称,我自己的126邮箱

6、开始下载源码

$ repo sync 

正常情况下,上面就是下载android4.2源码的流程,但我在下载的过程中遇到了下面问题 

问题1:“A new repo command ( 1.18) is available.”

其实这个问题就是说你本地的repo版本不是1.18,比这个旧,在出现这个的时候,下面会有一个提示你怎么操作的,如:

... A new repo command ( 1.18) is available.

... You should upgrade soon: 

cp /home/pn/android/.repo/repo/repo/home/pn/bin/repo(执行这一句就可以),开始我苦悲的上网找这个的解决方法,,,,浪费不少时间。。 

问题2:“error: Exited sync due to fetch errors...”

这个问题,网上都说是需要IP认证,其中我也根据

http://blog.csdn.net/fantao015/article/details/7625559

上面的操作,执行了一遍,其中包括注册了一个@gmail.com邮件,后面发现我没有用到这个也全部下载成功了。

问题3:经常提示

error: Failed connect to android.googlesource.com:443;Connection refused while accessinghttps://android.googlesource.com/a/platform/frameworks/base/info/refs

fatal: HTTP request failed

error: Cannot fetch platform/tools/motodev

error: Cannot fetch platform/frameworks/base

error: Cannot fetch platform/prebuilts/sdk

error: Exited sync due to fetch errors

等错误信息。

解决方法:编辑/etc/hosts文件

 $ vim /etc/hosts

增加下面内容,保存

74.125.71.82 www.googlesource.com

74.125.71.82 android.googlesource.com

203.208.46.172 cache.pack.google.com

59.24.3.173cache.pack.google.com

然后重新输入

$ repo sync 

这个关于DNS解析,提示了访问成功率,有兴趣的童鞋可以研究下。。哎,如果早找到该操作,就节省了我不错时间。

相关推荐