Linux环境下,Android系统源码的编译

电脑重装系统后,再重新搭建Android源码编译环境时有些过程有点模糊了,还需要先找资料,这次就记录下来,方便下次搭建。

官网教程:Android编译环境搭建
Android6.0源码:Android6.0源码

我使用的是Ubuntu 14.04 LTS系统和Android6.0源码
首先安装一下环境,OpenJDK 7 和一些其他组件,分别执行以下命令:

$ sudo apt-get update
$ sudo apt-get install openjdk-7-jdk
$ sudo update-alternatives --config java
$ sudo update-alternatives --config javac
$ sudo apt-get install git-core gnupg flex bison gperf build-essential \
  zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
  lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev ccache \
  libgl1-mesa-dev libxml2-utils xsltproc unzip

下载Android6.0的源码,直接从上面的地址下载,在Ubuntu的终端里下载实在是太慢,下载后是几个分割过的文件,将这些文件合并后解压即可:

cat Android6_r1_*>Android6.tgz
tar -zxvf Android6.tgz -C/yours

会自动解压到mydroid文件中,目录切换到mydroid文件夹下,然后执行一下命令:

$ source build/envsetup.sh
$ lunch aosp_arm-eng
$ make -j4

第一步初始化编译环境,第二部选择模拟器设备,第三部开始编译。
编译成功后,运行模拟器:

$ emulator

接下来你可以查看,修改、编译系统功能模块来进一步了解Android系统源码,当你执行完source命令后($ source build/envsetup.sh),你会得到一些额外的命令:


- m: Makes from the top of the tree.
- mm: Builds all of the modules in the current directory.
- mmm: Builds all of the modules in the supplied directories.
。。

使用-mmm命令可以编译指定的模块,当你修改过源码代码后,可以使用

$ make snod

命令来快速编译,最后在执行

$ emulator

命令,启动模拟器。

你可能感兴趣的:(Android,Android源码分析)