您的位置:首页 > 其它

【转载】——即学即用 GCC 4.8.2 编译安装小记

2016-04-04 22:27 281 查看
转载:原文链接:http://my.oschina.net/u/728245/blog/184550


转载说明:虽然找了很多资料来更新gcc,但是这个思路比较清晰,所以重新转载发文一篇。

以前从没有升级过GCC,一直用系统默认的GCC版本,最近在研究好久没有用过的 C, 便有了升级GCC的想发,大致如下。

环境: CentOS-6.5-i386 , gcc-4.4.7 系统必须已经安装有一个编译器,因为 gcc 也是需要编译的

首先 gcc 编译需要三个额外库,下载并按照下面的顺序安装它们,如下:

1. gmp ftp://ftp.gnu.org/gnu/gmp
2. mpfr ftp://ftp.gnu.org/gnu/mpfr
3. mpc http://www.multiprecision.org/mpc
1. 编译安装 gmp

# tar -zxvf gmp-5.1.3.tar.gz

# cd gmp-5.1.3

# ./configure

# make && make install

2. 编译安装 mpfr

# tar -zxvf mpfr-3.1.2.tar.gz

# cd mpfr-3.1.2

# ./configure

# make && make install

3. 编译安装 mpc

# tar -zxvf mpc-1.0.tar.gz

# cd mpc-1.0

# ./configure

# make && make install

4.将下列动态链接库文件复制或者做一个软链接到 /lib 下,因为后面编译安装 gcc 的时候有可能找不到上面三个依赖库的共享库文件

/usr/local/lib/libmpc.so

/usr/local/lib/libmpc.so.3

/usr/local/lib/libmpfr.so

/usr/local/lib/libmpfr.so.4

/usr/local/lib/libgmp.so

/usr/local/lib/libgmp.so.10

4. 编译安装 gcc

gcc 编译参数说明:

--prefix //默认 gcc 的安装目录,CentOS-6.5 下面最好安装到 /usr 下,不然可能会有问题

--enable-languages //指定 gcc 能编译哪些语言的文件,每种语言用逗号分隔, 例如 c,c++,java

--disable-multilib //默认gcc 能在32位系统上将代码编译成64位程序,或者在64位系统上编译成32位程序,如果加上这个编译选项则表示关闭这个gcc的交叉编译功能。

# tar -zxvf gcc-4.8.2.tar.gz

# cd gcc-4.8.2

# mkdir build

# cd build

# ../configure --prefix=/usr

# make && make install

注意: 当 gmp、mpfr、mpc 编译的时候是自定义指定的安装路径,在编译 gcc 时需要加上下面的选项:

--with-mpc=MPC的安装目录

--with-mpfr=MPFR的安装目录

--with-gmp=GMP的安装目录
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: