日期:2014-05-16  浏览次数:20707 次

如何在Linux上面安装GCC 4.1.2

安装步骤:

1、首先下载GCC 4.1.2的source code package:

$ wget http://mirrors.ustc.edu.cn/gnu/gcc/gcc-4.1.2/gcc-4.1.2.tar.bz2


2、解压缩之:

$ bzcat gcc-4.1.2.tar.bz2 | tar xvf -


3、创建DESTDIR:

$ mkdir /usr/local/gcc-4.1.2
$ cd /usr/local/gcc-4.1.2


4、配置:

$ /home/esms/downloads/gcc-4.1.2/configure --prefix=/usr/local/gcc-4.1.2 --enable-threads=posix --disable-checking --enable--long-long --host=i386-redhat-linux --with-system-zlib --enable-languages=c,c++,java


5、编译:

$ make

这个过程往往会遇到问题,实际机器类型、环境千差万别,只能看见一个解决一个:

1) /usr/bin/ld: BFD 2.14.90.0.4 20030523 internal error, aborting at ../../bfd/elf32-i386.c line 2377 in elf_i386_relocate_section

解决方法:先看这篇文章 http://gcc.gnu.org/ml/gcc-help/2006-07/msg00043.html,可能是因为binutils版本太低了,所以我想先升级下binutils:

$ wget ftp://ftp.kernel.org/pub/linux/devel/binutils/binutils-2.16.91.0.3.tar.gz

参看这篇文章了解怎么安装:http://www.linuxfromscratch.org/lfs/view/6.2/chapter06/binutils.html

$ mkdir -v ../binutils-build
$ cd ../binutils-build
$ ../binutils-2.16.91.0.3/configure --prefix=/usr --enable-shared
$ make tooldir=/usr
$ make check
$ make tooldir=/usr install
$ cp -v ../binutils-2.16.91.0.3/include/libiberty.h /usr/include

然后重新执行make。


6、安装:

$ make install


7、修改快捷方式:

$ cd /usr/bin
$ mv gcc gcc323
$ ln -s /usr/local/gcc-4.1.2/bin/gcc gcc
$ mv g++ g++323
$ ln -s /usr/local/gcc-4.1.2/bin/g++ g++
$ mv gcj gcj323
$ ln -s /usr/local/gcc-4.1.2/bin/gcj gcj

8、完成。


参考文献:

1、网友chuncn的中文安装指南:http://www.cnblogs.com/chuncn/archive/2010/10/15/1851853.html

2、GCC 4.1.2解压后自带的安装说明(英文):gcc-4.1.2/INSTALL/index.html