一、Ubuntu环境配置html
硬盘:120Gjava
内存:4Gandroid
注:配置很重要,直接影响可否编译成功。git
二、安装JDKweb
sudo apt-get updatecurl
sudo apt-get install openjdk-7-jdkjvm
注:验证是否安装成功flex
java -versionui
三、配置JDKurl
sudo gedit /etc/profile
在文件末尾加上:
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH
四、安装编译依赖的软件
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
注:Ubuntu版本不一样,依赖的软件也不同。
五、初始化编译环境
. build/envsetup.sh
六、选择编译包
lunch aosp_arm-eng
注:除了以上这个还有不少其余的编译包,能够经过输入lunch后按Tab键查看。
七、编译
make
八、遇到的问题
一直停在:
target SharedLib: libwebviewchromium (out/target/product/generic/obj/SHARED_LIBRARIES/libwebviewchromium_intermediates/LINKED/libwebviewchromium.so)
解决办法:
su切换到超级用户,执行如下操做:
一、dd if=/dev/zero of=/opt/swap1 bs=1024 count=1024000
(count的值等于1024 x 你想要的文件大小, 4096000是4G,1024000是1G)
二、mkswap /opt/swap1
(把这个文件变成swap文件)
三、swapon /opt/swap1
(启用这个swap文件)
四、为了使每次开机时都能正常使用swap文件,因此这里须要把swap文件增长到fstab文件中
sudo vi /etc/fstab
在最后一行增长以下内容
/opt/swap1 swap swap defaults 0 0
重复上述4步,再次增长一个/opt/swap2的文件。
再次从新编译源码:
一、
make installclean(保留以前编译的)
或
make clean(清空以前编译的)
建议选择第一个
二、. build/envsetup.sh
三、lunch aosp_arm-eng
四、make
九、有图有真相
十、参考资料