基于Ubuntu12.04的Android源码下载介绍
一.安装Ubuntu12.04我个人更喜欢在Windows进行开发,所以Ubuntu的安装选择的是Virtual Box4.1.16,具体的虚拟机安装Ubuntu的方法在这不赘述,唯一注意的一点就是硬盘存储映像开大些,我开的是60G,最好选择“动态分配存储”,因为在以后编译Android源码过程中会用到很大量的空间,空间不够编译会报错。安装完Ubuntu之后,保证能连上Internet
一.安装Ubuntu12.04
我个人更喜欢在Windows进行开发,所以Ubuntu的安装选择的是Virtual Box4.1.16,具体的虚拟机安装Ubuntu的方法在这不赘述,唯一注意的一点就是硬盘存储映像开大些,我开的是60G,最好选择“动态分配存储”,因为在以后编译Android源码过程中会用到很大量的空间,空间不够编译会报错。
安装完Ubuntu之后,保证能连上Internet,否则以后的步骤都无法执行。
二.搭建环境
1.Java环境
按照网上的做法,大部分都是通过apt-get的方式来进行安装,我是没有成功,所以就直接用ubuntu自带的软件中心搜索Java,选择“OpenJDK Java 6 Runtime”,安装之。。PS : 建议使用版本6或者5的,版本7的会造成编译出错。
安装成功后可以通过在命令行里输入:
java -version
命令来查看版本号,如出现以下提示信息,则安装成功
2.添加需要的包
借鉴网上的方法。
64位系统:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev lib32ncurses5-dev ia32-libs x11proto-core-dev libx11-dev lib32readline5-dev lib32z-dev libgl1-mesa-dev g++-multilib mingw32 tofrodos python-markdown libxml2-utils xsltproc
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
我是32位系统,所以选择第二组命令,等其自动下载安装完成后即可。
3.下载repo
注意:网上很多做法是使用代理服务器下载,开始我试了,不仅没效果,反倒是请求服务器一直超时,最后我把设置代理的环境变量删了立马好用,网上的做法有点多此一举。也许是网络环境不一样吧,大家多试试。
在用户目录下,创建bin文件夹,用于存放repo,并把该路径设置到环境变量中:
$ mkdir ~/bin
$ PATH=~/bin:$PATH
下载repo的脚本,用于执行repo.
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
4.初始化一个repo的客户端
创建一个空的目录,用于存放android源码。
PS:源代码的目录名称不要带空格,之前我的文件夹带空格所以导致编译没有通过。
我是用Nautilus在根目录下创建了 “AndroidDev”,并把用户和组都设置为自己经常使用的用户,拥有读写权限。
接着,在上面创建的目录下运行repo进行下载源码:
下载主线分支,主分支里面包含着最新修改的bugs,并未正式发出版本的最新源码。
$ repo init -u https://android.googlesource.com/platform/manifest
下载其他分支,正式发布的版本,可以通过添加-b的命令下载下来。
$ repo init -u https://android.googlesource.com/platform/manifest -b android-4.0.1_r1
在下载过程中会需要填写Name及Email,填写完之后,选择Y进行确认。
三.代码同步
$ repo sync
(若出现了new branch 、new tag说明已经在正常的同步过程了)这时只需要等待其完成,这个同步的时间会很久,因为Android的代码全部下载下来了,也包括着其他的分支。整个源码大概会有16G左右,惟有等待了,但这个时候可以用来准备一下开发环境。下载一个漫长的过程,在下载的过程中,有可以会有中断的情况,这时需要重新的repo sync,进行继续的同步了。下载完成的最后,会有许多100%的下载成功的提示,
更多推荐
所有评论(0)