首先,参考 https://blog.csdn.net/fuchaosz/article/details/51487585 这篇文章中的一系列操作,然后接下来说我遇到的错误,以及咋解决,
编译环境
1.ubantu 14.04LTS()
2.Android 6.0_r1
3.openjdk 7
系统是我新安装的物理机器,没有用虚拟机
下载源码
在windows上下载,迅雷还是啥的,随便你,下完之后,你想办法弄到linux上,随便是U盘拷贝,还是winscap啥的,都行,但是,不要有中文路径
1.解压源码并合并
以我的电脑为例,源码我是放在根目录下的workspace下cat Android6_r1_*>Android6_r1.tgz

2.合并完之后,校验下hash
md5sum Android6_r1.tgz

检查下这个值和你下载的文件txt中的值是不是一样,一样,则继续,不一样,重新下载
3.解压源码
tar -zxvf Android6_r1.tgz
N久过后解压完成了,会在当前目录生成一个myandroid的文件夹。如果你要移动源码,请移动压缩包,然后用解压命令解压,不要直接移动源码
安装相应的依赖
注意,上面我说了,我的linux是新安装的物理机器,不是虚拟机,而且,目前为止,我只是复制解压了源码,别的什么都没操作。
- 安装openjdk
sudo apt-get install openjdk-7-jdk
配置openjdk,打开/etc/profile文件
sudo gedit /etc/profile
在末尾追加下面代码:
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
然后重启下这个文件:
source /etc/profile
然后检查下配置是否正确
java -version
如下图:

- Ubuntu 14.04 软件包安装
sudo apt-get install git-core gnupg flex bison gperf libsdl1.2-dev
libesd0-dev libwxgtk2.8-dev squashfs-tools build-essential zip curl
libncurses5-dev zlib1g-dev pngcrush schedtool libxml2 libxml2-utils
xsltproc lzop libc6-dev schedtool g++-multilib lib32z1-dev lib32ncurses5-dev
lib32readline-gplv2-dev gcc-multilib libswitch-perl
libssl1.0.0 libssl-dev
开始编译
1.进入myandroid目录下,然后导入所需的环境变量和其他参数
source build/envsetup.sh

2.运行lunch
lunch

3.选择1

4.开始编译,执行make -jX, x为同时编译的线程数,一般google推荐这个数字为2倍的cpu个数再加上2,比如4核,就是10。我的是4核所以我用10
make -j10
查看cup个数可以用以下命令:
cat /proc/cpuinfo
好了接下来就是开始漫长的编译了,如果有error,那就不断修复error,也许是人品好吧,一路没有error,N久之后:

5.我们进入mydroid/out/target/product/generic目录,可以看到编译好的文件:

这里就是我们编译完后的文件了,最后我们来看一下:
emulator
10.png
过了一会之后:

OK,完事,这就算基本完成了,剩下的故事,待续......
网友评论