ubuntu 11.10下android2.2 源码获取
ubuntu 11.10下android2.2 源码获取
写在最前:用虚拟机装ubuntu,还下载android源码并且编译的,上辈子都是折翼的天使!!
为了编译的更加流畅,强烈要求虚拟机内存要至少1G、任务管理器中虚拟机进程优先级设置为实时。
1、vm7.1.4 新建ubuntu虚拟机,貌似不能很好支持11.10
(1)、File->Virtual Machine
(2)、选择Custom
(3)、选择6.5-7.x,
(4)、选择install the operating system later
(5)、选择Ubuntu
(6)选择安装路径
(7)、一路选择next,完成新建虚拟机。
2、安装ubuntu 11.04
(1)、在VM setting中,hardware选项卡中选择CD/DVD,右边选择下载Ubuntu的镜像。启动虚拟机,进行安装。
(2)、选择中文(简体),安装Ubuntu
(3)、安装VM tools
1、虚拟机的VM->install vmtools.ubuntu就会多出一个文件夹,其中就有vmtool.tar.gz;
2、复制该压缩文件到安装文件夹,并安装
Cp vmtoos.. /mnt/dir 复制
Tar zxvf Vm… 解包
sudo ./vmware-install.pl 安装
3、一路各种确定,直到安装完成。重启后就可以用了。
(4)、更新ubuntu的源为网易源。
1、Sudo –s(切换为root用户)
2、cp /etc/apt/sources.list /etc/apt/sources.list.bak备份一下
3、sudo gedit /etc/apt/sources.list编辑源列表。
网易 Ubuntu 11.10 源(速度很快)http://bolg.malu.me/wap/index-wap2.php?p=1190
代码:
deb http://mirrors.163.com/ubuntu/ oneiric main universe restricted multiverse
deb-src http://mirrors.163.com/ubuntu/ oneiric main universe restricted multiverse
deb http://mirrors.163.com/ubuntu/ oneiric-security universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ oneiric-security universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ oneiric-updates universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ oneiric-proposed universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ oneiric-proposed universe main multiverse restricted
deb http://mirrors.163.com/ubuntu/ oneiric-backports universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ oneiric-backports universe main multiverse restricted
deb-src http://mirrors.163.com/ubuntu/ oneiric-updates universe main multiverse restricted
4、sudo apt-get update
3、源码获取.命令都是在root下进行的
(1)、JDK5安装
Google官网说用1.5,网上说1.6可以编译通过,出了一个doc不行。没试过,还是用1.5
下载jdk-1_5_0_22-linux-i586.bin,http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase5-419410.html#jdk-1.5.0_22-oth-JPR
mv jdk-1_5_0_22-linux-i586.bin /opt //进入jdk所在文件夹,将下载的文件移到/opt
chmod +x jdk-1_5_0_22-linux-i586.bin //然后赋予该bin文件可执行属性:
./jdk-1_5_0_22-linux-i586.bin //一直按回车,直到提示Do you agree to the above license terms? [yes or no] ,输入yes ,开始解压
配置环境变量:
在 Ubuntu 系统中有两种设置环境变量 PATH 的方法。第一种适用于为单一用户设置 PATH,第二种是为全局设置 PATH。 第一种方法: 在用户主目录下有一个 .bashrc 文件,第二种方法:在 /etc/profile中增加。
gedit /etc/profile
在文件最后添加
#set java environment
export JAVA_HOME=/opt/jdk1.5.0_22
export JRE_HOME=/opt/jdk1.5.0_22/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
让环境变量立即生效source /etc/profile
查看是否成功 java –version
(2)相关组件
因为Android是由kernel、Dalvik、Bionic、prebuilt、build等多个Git项目组成,所以Android项目编写了一个名为Repo的Python的脚本来统一管理这些项目的仓库,使得Git的使用更加简单。
安装python:
sudo apt-get install python2.7
Python –V 查看版本2.7.2+
安装git :
sudo apt-get install git-core
Git --version 查看版本1.7.5.4
其他工具:
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev libesd0-dev libwxgtk2.6-dev build-essential zip curl libncurses5-dev zlib1g-dev
我使用的,根据提示来修改。网易源很快,居然有400k/s
repo
创建工作目录(我使用~/works/android_dev/bin),创建bin目录:
mkdir ~/works
mkdir ~/works/android_dev
cd ~/works/android_dev
mkdir bin
安装repo版本管理工具(基于git基础开发,便于git资源管理)
curl http://android.git.kernel.org/repo > ~/works/android_dev/bin/repo
cd bin
chmod a+x repo
PATH添加路径
Gedit ~/.bashrc
添加export PATH=/home/leno/works/android_dev/bin:
Source /etc/profile 更新
Echo $PATH 查看添加是否成功
Cd ~/works/ android_dev/bin 进入工作目录
repo init -u git://android.git.kernel.org/platform/manifest.git -b froyo 初始化repo
需要提示输入用户和邮件。完成后看到repo initialized in /home/leno/works/android_dev/bin,后面就是下载路径。
Repo sync
同步下载,过程中间可能会出错,继续输入这个命令就好。下载过程中需要多久就看网速给力不了,一共2G多。
遇到的错误:
1、android.git.kernel.org errno=Connection refused 不能访问。
有可能是网络不给力,如果多次出现这种问题,就在浏览器中输入http://android.git.kernel.org/platform/manifest.git 看能否登陆。地址即repo初始化时地址换为http。如果可以正常访问,
[1] 重新初始化repo.
repo init -u http://android.git.kernel.org/platform/manifest.git -b froyo
[2]修改manifest.xml。将git修改为http
Gedit .repo/manifest.git
出现如下:
<?xml version="1.0" encoding="UTF-8"?>
<manifest>
<remote name="korg"
fetch="http:// android.git.kernel.org/"
review="review.source.android.com" />
<default revision="froyo"
remote="korg" /> )
其实,http比我以前用git还快。。。。。
上面方法还是不能连接的话,也有人说是伟大的GFW。等着或者proxy吧(中文居然是)。下面两篇博客可以看看
http://blog.csdn.net/lichaoandy/article/details/6218762
http://blog.csdn.net/truewell/article/details/4462225