GCC-4.6编译android4.0出错 安装GCC4.4

在Ubuntu 12.04中的默认的GCC版本是4.6。但是这个版本在编译android 4.0源码的时候会出差,下面是安装和设置GCC4.4的方法。

第一种方法:

Install GCC 4.4

First, install GCC 4.4 (and friends):

apt-get install gcc-4.4 g++-4.4 g++-4.4-multilib gcc-4.4-multilib

Set 4.4 to be the default

Then set 4.4 to be higher priority than 4.6:

update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.4 100
update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 50
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 100
update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 50
update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.4 100
update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.6 50

Verify that it has worked:

gcc -v
Using built-in specs.
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 4.4.6-11ubuntu2' --with-bugurl=file:///usr/share/doc/gcc-4.4/README.Bugs --enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.4 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.4 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-objc-gc --disable-werror --with-arch-32=i686 --with-tune=generic --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu
Thread model: posix
gcc version 4.4.6 (Ubuntu/Linaro 4.4.6-11ubuntu2) 

Done! 

 

第二种方法:

GCC-4.4.3 安装说明

注意:以下的操作都是root权限

由于gcc-4.4.3.tar.bz2linux-2.6.32.tar.bz2这两个包很大,所以需要自己下载。

1.      下载所需的安装包:

1)      gcc-4.4.3.tar.bz2

2gcc依赖的两个包:gmp-4.2.4.tar.bz2mpfr-2.3.2.tar.bz2

3)内核linux-2.6.32.tar.bz2,

解压缩与安装

1)新建目录

# cd /home

#mkdir mygcc

2)      用工具把所下载到的gcc-4.4.3.tar.bz2gmp-4.2.4.tar.bz2mpfr-2.3.2.tar.bz2压缩包拷贝到mygcc目录下

3)      进入mygcc目录进行解压

#cd mygcc

#tar –xvf tar xvf gcc-4.4.3.tar.bz2

#tar xvf mpfr-2.3.2.tar.bz2

解压后在当前目录下出现了mpfr-2.3.2目录,并且把该目录更名成mpfr,

#mv mpfr-2.3.2 mpfr
#tar xvf gmp-4.2.4.tar.bz2

解压后在当前目录下出现了gmp-4.2.4目录,并且把该目录更名成gmp,

#mv gmp-4.2.4 gmp

4)    把上面改名后的两个目录移动到gcc-4.4.3目录下:

#mv mpfr gmp gcc-4.4.3

5)    建立目标目录,用来存放安装信息

#cd /usr/local

#mkdir gcc-4.4.3

6)    配置

注意:这一步必须是在目标目录下执行的,例如我的目标目录在/usr/local/gcc-4.4.3目录。

# /home/mygcc/gcc-4.4.3/configure --prefix=/usr/local/gcc-3.4.0 --enable-threads=posix --disable-checking --enable--long-long --enable-languages=c,c++,java

7)    编译(make 和下一步make install的操作任然是在目标目录下操作的即我这里是/usr/local/gcc-4.4.3目录下)

#make

注意:这一步需要编译很长时间,大约50分钟,需耐心等待,若你是按照我的步骤操作的一般不会出现问题的。在make完周后执行make install命令。

6)安装

#make install

 

操作完这一步,此时gcc和依赖的包就全部装完了。此时我的gcc-4.4.3安装在了/usr/local/gcc-4.4.3/bin/gcc,可以不用设置环境变量,只是每次使用时指明gcc4的路径就可以了,例如,我要编译hello.c文件,那么命令为:/usr/local/gcc-4.4.3/bin/gcc hello.c –o hello

把gcc执行文件放到/usr/bin目录下,gcc-4.4和gcc-4.6 引用命令的时候带版本就行了,再在bin目录建个名为gcc的快捷方式链接到其中常用的一个,这样使用命令的时候就不用带版本了。

 

 
posted on 2015-03-14 19:41  swek  阅读(338)  评论(0编辑  收藏  举报