织梦CMS - 轻松建站从此开始!

罗索

当前位置: 主页>嵌入式开发>Android>

android平台下载和编译方法(官方的方法)

罗索客 发布于 2009-12-25 22:38 点击:次 
本文为转载,我目前的ANDROID是在REDHAT上完成的,已经烧入到开发板上正常运行,改天会写一个在REDHAT上编译的文档,下面这篇是在UBENTU上编译,我没有试过,请兄弟们验证且回复一下我,谢谢
TAG:

本文为转载,我目前的ANDROID是在REDHAT上完成的,已经烧入到开发板上正常运行,改天会写一个在REDHAT上编译的文档,下面这篇是在UBENTU上编译,我没有试过,请兄弟们验证且回复一下我,谢谢.以下为转载.

转载自:北京理工大学  20981  陈罡

10月22日,这是有纪念意义的一天,因为google公司在那一天总算开放了整个androidplatform的源代码,总算可以不用在那个java的虚拟机里面自娱自乐了。总想写点什么庆祝一下,又觉得过于苍白,于是抽时间来真刀真枪的试一遍看看到底google有没有“忽悠”我们。

android的源代码下载的官方网站是:http://source.android.com
源代码的下载说明页面是:http://source.android.com/download

其实英文好的朋友大可不必看偶在此罗嗦,直接follow google的说明就行了,一切都很简单。

下面就把android platform在slackware 12.0上面的下载、编译过程汇总一下:

(1)当然了,需要安装slackware 12.0或者更高版本的linux发行版,直接选择“full”模式,完全安装。

(2)确认环境是否达到了要求,你可以在linux下面建立一个账户,然后在账户的目录下面查看是否满足如下的要求:
a)git (1.5.4或者以上版本,slackware 12.0本身就是1.5.5的)
b)python (2.4或者以上的版本,slackware 12.0本身应该是2.5的)
c)jdk5.0以上的版本,这个slackware 12.0没有,slackware只有java的运行环境而已,于是登录:
http://java.sun.com/javase/downloads
下载一个即可,我下载的是jdk5.0 update 10的版本,理论上应该越高越好吧。
然后,就用chmod a+x jdkxxxxxxx.bin,然后运行,安装到你的机器上即可。
(注:当然了,也可以直接su成root把安装包弄到/usr/local目录下面去)

然后有一个网络方面的设置需要注意,运行如下程序:
/usr/local/jdk-xxxxxxx/bin/ControlPanel
选择在network里面选择setting,然后把连接类型设置为Direct Connection。

(3)创建工作目录,进入工作目录,创建bin目录:
mkdir ~/works
mkdir ~/works/android_dev
cd ~/works/android_dev

mkdir bin

(4)下载安装repo版本管理工具
curl http://android.git.kernel.org/repo > ~/works/android_dev/bin/repo
cd bin
chmod a+x repo

(5)开始准备下载android
cd ~/works/android_dev
./bin/repo init -u git://android.git.kernel.org/platform/manifest.git
通常情况下会出现error提示(如果是以前没有创建过repo账户的话),这个不要紧,忽略掉它好了。

(6)配置repo账户
git config --global user.email "[email=xxxxx@xxxxxxx]xxxxx@xxxxxxx[/email]"
git config --global user.name "xxxxxx"

(7)开始下载android platform的源代码
repo sync
这个操作会持续一段时间,看网速了;google上面说的源代码占用2.1G的硬盘空间,但似乎没有那么大,只有900M左右。

(8)好了,现在准备一下环境变量
最好在.bashrc或者在/etc/profile文件中添加环境变量定义:
export ANDROID_JAVA_HOME=$JAVA_HOME
需要logout,再login一下,然后用:
echo $ANDROID_JAVA_HOME
命令来确认一下环境变量是否已经生效

(9)修改一个小“bug”
理论上在ubuntu上面可以直接开始编译了,但是在slackware上似乎还需要手工修改一个编译脚本上的bug,找到如下文件:
~/works/android_dev/external/sqlite/dist/Android.mk
找到下面这一行:

ifneq ($(strip $(have_readline)),)
LOCAL_LDLIBS += -lreadline
endif
 

这里只有一个-lreadline,对于slackware来说就不够了,编译的时候会出现libreadline.so:undefinedreference 'PC'之类的错误。修正的方法很简单,就是直接在这一句的后面加上-lncurses,改正后应该是这个样子的:
LOCAL_LDLIBS += -lreadline -lncurses
好了,然后就可以开始放手编译了。
(10)编译
make
好了,然后就可以出去晃晃,喝杯咖啡了(足够你喝很多很多杯的咖啡)。
编译完毕以后,会发现在代码目录下多了一个目录:
~/works/android_dev/out
这就是生成的结果了,此时不要着急,需要先再设置一下环境变量方法同(8):
export ANDROID_PRODUCT_OUT=/home/wayne/works/android_dev/out/target/product/generic
设置完了以后,需要logout,再login一次才可以喔,更新环境变量。
(11)开始验证生成的结果
进入android_dev/out/host/bin/目录下,然后运行:
emulator --debug-init -skin QVGA-L [回车]
应该看到以下的画面(第一次开启的时候,应该还有一个向google反馈的一个对话框,按下确定即可):
 

(陈罡)
本站文章除注明转载外,均为本站原创或编译欢迎任何形式的转载,但请务必注明出处,尊重他人劳动,同学习共成长。转载请注明:文章转载自:罗索实验室 [http://www.rosoo.net/a/200912/8183.html]
本文出处:北京理工大学 20981 作者:陈罡
顶一下
(1)
100%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
将本文分享到微信
织梦二维码生成器
推荐内容