搭建Android源代码编译环境-linux

来源:互联网 发布:赣州教育软件代理 编辑:程序博客网 时间:2024/05/01 16:24

一、Ubuntu Linux操作系统和工具安装

选择ubuntu 10.10桌面版系统,下载地址:http://releases.ubuntu.com

下载ubuntu-10.10-desktop-amd64.iso

安装完成后,更新ubuntu系统工具包;


二、安装和配置Java运行环境

Java运行环境JDK安装及配置

下载JDK的Linux平台安装包,网址:http://www.oracle.com/technetwork/java/javase/downloads/index.html

下载并保存到~/tools目录下

$ chmod +x jdk-8u121-linux-x64.bin  //增加可执行权限

$ ./jdk-8u121-linux-x64.bin //执行JDK的安装,会在当前目录下新建jdk相关目录,安装的文件保存在此目录;

配置Java环境变量

在home路径下vim .bashrc 在此配置文件最后添加Java的一些基本环境配置信息:JAVA_HOME, JRE_HOME, CLASSPATH, PATH

详细代码如下:

export JAVA_HOME = ~/tools/jdk...

export JRE_HOME = $JAVA_HOME/jre

export CLASSPATH = $JAVA_HOME/lib: $JRE_HOME/lib: $CLASSPATH

export PATH = $JAVA_HOME/bin: $JRE_HOME/bin: $PATH

配置完成后,使生效并验证配置是否正确

$ source .bashrc  //使.bashrc环境变量的配置信息生效

$ java -version //验证Java安装,配置是否正确

三、Android SDK下载和配置

完成Java运行环境的安装和配置后就需要安装Android SDK(软件开发工具包)

网址:http://developer.android.com/sdk/index.html

下载linux版本的安装管理工具包;保存到~/tools目录下;

之后进入~/tools目录下,$ tar -xvf android-sdk-linux.tgz 解压到当前目录下的android-sdk-linux下

进入android-sdk-linux/tools目录,运行./android;此时会弹出Android SDK Manager运行窗口;

通过Android SDK Manager下载和安装SDK中对应的工具和具体的Android SDK;

SDK下载和安装完成后,将Android SDK的相应工具路径加入系统环境变量中,可在任何路径下运行使用Android SDK相关工具,

增加platform-tools和tools目录到PATH,详细代码如下:

$ vim ~/.bashrc

export PATH = $PATH:$JAVA_HOME/bin:$JRE_HOME/bin: ~/tools/android-sdk-linux/tools: ~/tools/andorid-sdk-linux/platform-tools

$ source .bashrc //使配置生效

四、使用Android SDK启动虚拟设备

运行./android 弹出Android SDK Manager窗口,单击Tools-->Manage AVDs...菜单,弹出Android SDK and AVD(Android Virtual Device,Android虚拟设备) Manager对话框,单击此对话框右边“New”按钮,新建Android虚拟设备配置信息,创建Android虚拟设备;

五、Android源代码下载及编译过程

配置工作目录

$ vim ~/.bashrc

export $workdir = ~/Android_Code //Android_Code存放代码

下载Android源码

$ sudo apt-get install git-core curl  //下载安装这两个工具

$ curl http://Android.git.kernel.org/repo > ./repo  //从源码网站下载repo脚本,该脚本是Google为了方便源码下载而提供的,通过该脚本可下载整套源码。

$ chmod a+x repo  //设置repo脚本可执行

$ ./repo init -u git://Android.git.kernel.org/platform/manifest.git -b frogo  //初始化git库;

$ ./repo sync  //下载源码

整体编译Android源代码

$ cd $workdir

$ make

单个模块编译

$ cd $workdir

$ mmm packages/apps/Phone/  //编译Phone应用

$ . build/envsetup.sh //mm编译方法夹在环境变量

$ cd packages/apps/Phone  //Phone应用代码目录

$ mm  //编译Phone模块

编译生成本地Android SDK

$ cd $workdir

$ . build/envsetup.sh

$ lunch sdk-eng //加载sdk-eng,默认是full-eng

$ make sdk //编译SDK

//编译成功后有如下日志

Package SDK: out/host/linux-x86/sdk/android-sdk_eng.android_linux-x86.zip

六、使用本地编译成功的镜像文件启动Android模拟器

Android编译成功后,在$workdir/out/target/product/generic会生成IMG镜像文件

通过system.img、userdata.img、ramdisk.img这3个镜像文件便可启动Android模拟器,使用命令如下:

$ export imgpath = $workdir/out/target/product/generic

$ emulator -image $imgpath/system.img -data $imgpath/userdata.img -ramdisk $imgpath/radisk.img

执行以上命令后,便可以启动一个默认配置的Android虚拟设备;

可以通过加载镜像文件运行虚拟设备从而运行、调试Android源代码;

启动模拟器的脚本如下:

#!/bin/sh

imgpath = $workdir/out/target/product/generic

nohup emulator -avd MyFistDevice -image $imgpath/system.img -data $imgpath/userdata.img -ramdisk $imgpath/ramdisk.img > dev/null 2>&1 &

制作IMG镜像文件的Shell脚本如下:

#!/bin/sh

imgpath =  $workdir/out/target/product/generic

rm $imgpath/system.img

mkyaffs2image $imgpath/system $imgpath/system.img


1 0
原创粉丝点击