系统:Ubuntu16.04.02
安装库文件和JDK
使用cd 命令,进入解压出来的“Android_JDK” -->“jdk6”文件夹,运行脚本文件
“install-sun-java6.sh”。
进入解压出来的文件夹“Android_JDK”中运行脚本“install-devel-packages.sh”,安
装库文件。在Ubuntu 命令行中,执行命令“./install-devel-packages.sh”。
解决:先删掉有问题的,最后安装它。
apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 g++-multilib tofrodos lib32ncurses5-dev python-markdown libxml2-utils xsltproc zlib1g-dev:i386
解决libgl1-mesa-glx-lts-quantal:i386:apt-get install libgl1-mesa-glx-lts-<release>:i386(其中release的值拒取决于你的系统内核,比如的我使用16.04.2安装的ubuntu则release为wily,具体替换为什么值请参考:)
解决libgl1-mesa-dev-lts-quantal:apt-get install libgl1-mesa-dev-lts-wily
解决mingw32:deb trusty main universe
发现添加源后执行./install-devel-packages.sh不会报任何错误。
降低 GCC 版本
1.apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib
2.update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.4 100
3.update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 50
4.update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 100
5.update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 50
6.update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.4 100
7.update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-5 50
8.gcc -v
Uboot编译:
内核编译出错make zImage
解决办法:
其实,提示的错误信息已经明确告诉你了,你应该省略defined().
这里,我们打开 kernel/timeconst.pl
@val = @{$canned_values{$hz}};
if (!defined(@val)) {
@val = compute_values($hz);
}
output($hz, @val);
将if (!defined(@val)) 改为if (!@val),再次编译就可以通过了。
查了一下更新,发现其中有一项是perl版本升级到了 v5.22.1,然后查了perl官方文档,发现官网因为一个bug,该版本将defined(@array)去掉了。可以直接使用数组判断非空。
Android4.0.3编译: