大家可以关注下我博客,我更新的内容基本都在我的博客。
PS:很多人在编译android4.0中可能遇到一些列问题,比如说其中一个就是GCC版本过高。
————————————————————————————————–
例如:
/usr/include/features.h:323:26: 致命错误:
bits/predefs.h:没有那个文件或目录
编译中断。
make: ***
[out/host/linux-x86/obj/EXECUTABLES/mkbootfs_intermediates/mkbootfs.o]
错误 1
make: *** 正在等待未完成的任务….
In file included from /usr/include/stdlib.h:25:0,
from build/tools/acp/acp.c:11:
/usr/include/features.h:323:26: 致命错误:
bits/predefs.h:没有那个文件或目录
编译中断。
ubuntu 11.10的gcc版本是4.6.1,版本太高,编译android时出错,要把gcc版本改为4.4.3。
废话不多说了,直接写解决方法吧;
ubuntu 系统下安装gcc 4.4的方法是仅用以下两条命令。
sudo apt-get install gcc-4.4
sudo apt-get install g++-4.4
装完后在/usr/bin目录下
$ ls -l gcc*
lrwxrwxrwx 1 root root 7 2011-10-29 09:11 gcc ->
gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 05:47 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 05:43 gcc-4.6
这时会发现gcc 链接到gcc-4.6, 需要将它改为链接到gcc-4.4
:
sudo mv gcc gcc.bak
sudo ln -s gcc-4.4 gcc
同理
ls -l g++*
lrwxrwxrwx 1 root root 7 2011-08-14 15:17 g++ ->
g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 05:45 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 05:39 g++-4.6
需要将g++链接改为g++-4.4:
/usr/bin$ sudo mv g++ g++.bak
/usr/bin$sudo ln -s g++-4.4 g++
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6
,现在一切ok,你可以测试了,我之前也出现问题过,现在用一小时多一点就编译成功了,大家可以去试试了。
然后继续编译,期间可能还发生g++ selected multilib '32' not
installed的错误,需要:
sudo apt-get install g++-4.4-multilib