换用gcc与g++的较低版本

3、换用gcc与g++的较低版本
 
Ubuntu11.10自带的gcc与g++版本为4.6,用该版本编译android时会遇到一些错误,如:
 
1 host Prebuilt monkeyrunner (outhostlinux-x86objEXECUTABLESmonkeyrunner_intermediatesmonkeyrunner)  
 
2 host C++ obbtool = frameworksbasetoolsobbtoolMain.cpp  
 
3 命令行00 错误: “_FORTIFY_SOURCE”重定义[-Werror]  
 
4 built-in00 附注: 这是先前定义的位置  
 
5 cc1plus:所有的警告都被当作是错误
 
网上有文章说修改buildcorecomboHOST_linux-x86.mk文件,将
 
1 HOST_GLOBAL_CFLAGS += -D_FORTIFY_SOURCE=0
 
修改成
 
1 HOST_GLOBAL_CFLAGS += -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
 
这种方法虽然能解决该问题,但也会引出新的问题,还要继续不断的修改,很麻烦,而且也会破坏android源码的原生状态。但是如果使用4.4版本的gcc与g++,则不会出现这些错误,方法如下:
 
通过gcc -v命令可以发现gcc库在usrlibgcci686-linux-gnu目录下,该目录下有当前系统支持的各种版本gcc库 。在安装gcc 4.4前该目录下是没有4.4目录的,安装gcc 4.4后该目录下就会多出4.4这个目录,且该4.4目录下有各种相应库文件。
 
ubuntu 32bit系统下安装gcc 4.4的最好方法是仅用以下两条命令,不需要其它命令,否则编译时可能会出错。
 
1 $sudo apt-get install gcc-4.4  
 
2 $sudo apt-get install g++-4.4
 
装完后进入到usrbin目录下
 
1 $ls -l gcc
 
会显示以下结果
 
lrwxrwxrwx 1 root root 7 2011-10-29 0911 gcc - gcc-4.6
-rwxr-xr-x 1 root root 224544 2011-10-06 0547 gcc-4.4
-rwxr-xr-x 1 root root 302104 2011-09-17 0543 gcc-4.6
 
发现gcc链接到gcc-4.6, 需要将它改为链接到gcc-4.4,方法如下
 
1 $sudo mv gcc gcc.bak  
 
2 $sudo ln -s gcc-4.4 gcc
 
同理,对g++也做同样的修改:
 
1 $ls -l g++
 
lrwxrwxrwx 1 root root 7 2011-08-14 1517 g++ - g++-4.6
-rwxr-xr-x 1 root root 228640 2011-10-06 0545 g++-4.4
-rwxr-xr-x 1 root root 306200 2011-09-17 0539 g++-4.6
 
需要将g++链接改为g++-4.4
 
1 $sudo mv g++ g++.bak  
 
2 $sudo ln -s g++-4.4 g++
 
再查看gcc和g++版本号:
gcc -v
g++ -v
均显示gcc version 4.4.6 ,说明gcc 4.4安装成功。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值