编译前的准备工作:
一定要按照官方的要求配置编译环境,否则会出现许多不知名错误:
$ sudo apt-get install dpkg-dev
$ sudo apt-get install git gnupg flex bison gperf build-essential \
zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev \
libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 \
libgl1-mesa-dev g++-multilib mingw32 tofrodos \
python-markdown libxml2-utils xsltproc zlib1g-dev:i386
$ sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so
1.Unknown parameter a interfaceName for tags/attrs
编译android不能使用过高版本的gcc,会编译失败。谨记
因机器上的gcc版本过高,需替换成4.4.6重新进行编译。
解决方法:
1)安装4.4版本的gcc和g++
- $ sudo apt-get install gcc-4.4
- $ sudo apt-get install g++-4.4
- $ sudo apt-get install g++-4.4-multilib
2)设置gcc版本,使gcc链接到gcc-4.4
- $ ls -l /usr/bin/gcc*
- lrwxrwxrwx 1 root root 7 2011-11-01 23:56 /usr/bin/gcc -> gcc-4.6
- -rwxr-xr-x 1 root root 224544 2011-10-06 05:47 /usr/bin/gcc-4.4
- -rwxr-xr-x 1 root root 302104 2011-09-17 05:43 /usr/bin/gcc-4.6
- $ cd /usr/bin
- $ sudo mv gcc gcc.bak
- $ sudo ln -s gcc-4.4 gcc
3)设置g++版本,使g++链接到g++-4.4
- $ sudo mv g++ g++.bak
- $ sudo ln -s g++-4.4 g++
4)设置完毕后,重新进行编译即可
dalvik/vm/native/dalvik_system_Zygote.c:In function ‘setrlimitsFromArray’:
dalvik/vm/native/dalvik_system_Zygote.c:192: error: storage size of ‘rlim’isn’t known
dalvik/vm/native/dalvik_system_Zygote.c:215: warning: implicit declaration offunction ‘setrlimit’
dalvik/vm/native/dalvik_system_Zygote.c:192: warning: unused variable ‘rlim’
解决方法:
$vi android/dalvik/vm/native/dalvik_system_Zygote.c
//add two lines :
#include <sys/time.h>
#include <sys/resource.h>
修改后可以在ubantu13.04上可以编译通过,并且 ubuntu10.04 和 ubuntu12.04都也可以编译通过,没有影响3./usr/bin/ld: cannot find -lxxx
collect2: ld returned 1 exit status
make: *** [libphp5.la] Error 1
解决方法:
sudo apt-get install libxxx-dev
可能ubuntu有更新软件名,但安装时会有提示,自己注意下就好。
4. Can't locate Switch.pm in @INC ununtu 编译错误
解决方法:
- $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
$ chmod a+x ~/bin/repo - $ sudo apt-get install libswitch-perl
5./usr/include/zlib.h:34: fatal error: zconf.h: No such file or directory compilation terminated.编译错误
解决方法:
sudo apt-get install zlib1g-dev