android源码编译错误

编译前的准备工作:

一定要按照官方的要求配置编译环境,否则会出现许多不知名错误:

$ 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版本的gccg++

[html]  view plain copy
  1. $ sudo apt-get install gcc-4.4  
  2. $ sudo apt-get install g++-4.4  
  3. $ sudo apt-get install g++-4.4-multilib

2)设置gcc版本,使gcc链接到gcc-4.4

[html]  view plain copy
  1. $ ls -l /usr/bin/gcc*  
  2.   
  3. lrwxrwxrwx 1 root root      7 2011-11-01 23:56 /usr/bin/gcc -> gcc-4.6  
  4.   
  5. -rwxr-xr-x 1 root root 224544 2011-10-06 05:47 /usr/bin/gcc-4.4  
  6.   
  7. -rwxr-xr-x 1 root root 302104 2011-09-17 05:43 /usr/bin/gcc-4.6  
  8.   
  9. $ cd /usr/bin  
  10. $ sudo mv gcc gcc.bak  
  11. $ sudo ln -s gcc-4.4 gcc  


3)设置g++版本,使g++链接到g++-4.4

[html]  view plain copy
  1. $ sudo mv g++ g++.bak  
  2. $ sudo ln -s g++-4.4 g++  

4)设置完毕后,重新进行编译即可


2.Android源代码编译】Ubuntu 13.04 编译android 2.3源代码时出现了以下错误

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 编译错误

解决方法:

  1. $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo 
    $ chmod a+x ~/bin/repo
  2. $ 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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值