CentOS6.8下编译安装GCC详解
<p>关于 GCC 在 CentOS 下通过 yum 安装默认版本号,CentOS 5 是 4.1.2;CentOS 6 是 4.4.7;CentOS 7 是 4.8.3。</p><p>很多时候在编译安装软件都需要高版本的 GCC,否则就会报错。</p>
<p>那么如何升级 GCC 的版本呢?</p>
<p>首先要确认升级到的 GCC 版本号。</p>
<p>目前 GCC 的最新版已经到了 5.2,而 CentOS 7 则依然使用其 4.8,所以基于兼容性考虑,我选择升级到 4.8.5。</p>
<p>GCC 官网:<a rel="nofollow" target="_blank" href="https://gcc.gnu.org">https://gcc.gnu.org</a></p>
<p>下面开始一步一步来编译安装 GCC 4.8.5,需要注意的是,在编译安装 GCC 之前,系统里必须先要通过 yum 安装老版本的 GCC 和依赖库。</p>
<p>如果是在 x86_64 系统下编译的话,还需要安装 libgcc.i686 glibc-devel.i686 才行。</p>
<p>yum install -y gcc texinfo-tex flex zip libgcc.i686 glibc-devel.i686</p>
<p><strong>注意:</strong>编译安装 GCC 内存不小于 1GB,Swap 不小于 1GB,硬盘最低不小于 10GB,否则极有可能会中途报错退出。</p>
<p>编译安装完后,目录 gcc-4.8.5 将会有 5GB 之多。</p>
<p><strong>1、下载源码</strong></p>
<p>wget ftp://ftp.gnu.org/gnu/gcc/gcc-4.8.5/gcc-4.8.5.tar.gz</p>
<p><strong>2、下载依赖包</strong></p>
<p>编译安装 GCC 需要依赖 mpc,mpfr,gmp包。好在 GCC 源码里自带脚本可以轻松下载依赖包。</p>
<p>tar zxf gcc-4.8.5.tar.gz cd gcc-4.8.5 ./contrib/download_prerequisites</p>
<p align="center"><img alt="" src="https://img.jbzj.com/file_images/article/201703/2017030816061334.png" /></p>
<p align="center"><img alt="" src="https://img.jbzj.com/file_images/article/201703/2017030816061335.png" /></p>
<p align="center"><img alt="" src="https://img.jbzj.com/file_images/article/201703/2017030816061336.png" /></p>
<p>编译和安装</p>
<p># cd gcc-4.8.1</p>
<p>#./gcc-4.8.1/configure--prefix=/usr/local/gcc-4.8.1 --enable-languages=c,c+</p>
<p>prefix=/usr/local/gcc-4.8.1表示配置安装的路径,如果不指定安装路径,执行文件会默认放在/usr/local/bin下,这样做是为了方便维护,当需要卸载时,直接删除该目录即可。</p>
<p>enable-languages表示安装语言,在这里表示只安装c和c++</p>
<p>编译</p>
<p>准备工作完成后,就可以编译了</p>
<p># make</p>
<p>此过程大概2小时左右哦,如果中途报错,提示fatal error:gnu/stubs-32,No such file or directory.如下图示:</p>
<p align="center"><img alt="" src="https://img.jbzj.com/file_images/article/201703/2017030816061337.png" /></p>
<p>运行下面命令,然后重新编译</p>
<p># yum -y install glibc-devel.i686 --setopt=protected_multilib=false</p>
<p># make</p>
頁:
[1]