运行环境:Windows+VirtualBox、Ubuntu10.10 amd64
一:获取Android源码
通过curl下载repo脚本,将官方推荐的git改为http,并根据需要给curl增加proxy:port:
$curl > ~/bin/repo
增加repo的可执行权限:
$chmod a+x ~/bin/repo
将repo脚本中的git改为http。
在~/.bashrc中增加repo的proxy和PATH:
export HTTP_PROXY=xxx.xxx.com:8080
export http_proxy=HTTP_PROXY
export PATH=~/bin:$PATH // 直接执行repo,不需要每次都加路径。
创建工作目录:
$mkdir mydroid
cd mydroid
初始化repo,在mydroid下生成.repo目录:
repo init -u
或者
repo init -u -b froyo
将.repo目录manifest.xml中的git也改为http。
同步,获取kernel之外的android所有源码:
$repo sync
二:编译Android
$cd ~/mydroid
$make
这一步会出现各种各样的问题。
1、32位 or 64位,目前一般编译32位。
错误信息:
build/core/main.mk:73: You are attempting to build on a 32-bit system.
这是因为froyo/2.2默认支持64-bit。
解决办法:
修改./external/clearsilver目录下的4个文件cgi/Android.mk、java-jni/Android.mk、util/Android.mk、cs/Android.mk,
将LOCAL_CFLATS +=-m64 LOCAL_LDFLAGS += -m64 都改为 m32。
修改./build/core/main.mk,
将ifneq (64, $(findstring 64,$(build_arch)))改为ifneq (i686, $(findstring i686,$(build_arch)))。
2、Java版本不对,需要安装Java1.6。
增加source服务器:
sudo add-apt-repository "deb maverick partner"
刷新:
sudo apt-get update
安装:
sudo apt-get install sun-java6-jdk
3、选择Java版本。
已经安装了Java 1.5和1.6两个版本,需要根据android版本选择合适的一个Java版本:
sudo update-alternatives --config java
sudo update-alternatives --config javac
然后确认一下Java版本即可:
java -version
三:获取Kernel源码
git clone git://android.git.kernel.org/kernel/common.git kernel
阅读(1520) | 评论(0) | 转发(0) |