下载 repo

使用的是清华镜像,按步骤来下载即可。

具体参考Android 镜像使用帮助
这种方法下载比较慢,下了有50+G,大部分都是git文件。
所以准备的硬盘空间要大一些!大一些!再大一些!
我编译完成后占用的总空间有101G!其中编译后的out目录26G, .repo目录66G, 也就是源码只有9G…

安装jdk

我之前安装的jdk是1.7的,android4.4.4需要安装1.5的版本。

安装依赖

这里一定要确保全部安装了。
下面的命令是针对ubuntu14.04来说的,其余系统参考官网

1
2
3
4
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

编译

源码根目录下执行make。
出现了!错误!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Traceback (most recent call last):
File "../build/scripts/make_css_property_names.py", line 255, in <module>
in_generator.Maker(CSSPropertiesWriter).main(sys.argv)
File "/media/mobiledisk/source-code/repo-android/external/chromium_org/third_party/WebKit/Source/build/scripts/in_generator.py", line 99, in main
writer.write_files(options.output_dir)
File "/media/mobiledisk/source-code/repo-android/external/chromium_org/third_party/WebKit/Source/build/scripts/in_generator.py", line 79, in write_files
self._write_file(output_dir, generator(), file_name)
File "../build/scripts/make_css_property_names.py", line 250, in generate_implementation
gperf = subprocess.Popen(gperf_args, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
errread, errwrite)
File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
raise child_exception
OSError: [Errno 2] No such file or directory

这种情况就是某个依赖没有安装…

运行编译好的系统

源码根目录下执行一下命令:

source build/envsetup.sh
lunch full-eng
emulator

就会启动自带的模拟器了,里面就是刚刚编译好的系统。


番外

源码根目录下关于avd的操作:

android list avd: 列出模拟器列表
android create avd -t 1 -n myavd: 创建一个名为myavd的模拟器,-t为指定id.具体可通过-h查看.
emulator -avd myavd: 启动模拟器