史上最强gcc4.8安装教程【gcc4.8.2】支持多版本
日期: 2020-05-19 分类: 个人收藏 449次阅读
自动安装包:
来源:basicbench包中的basicbench/GCC(by 侯宇)
可将上述目录打包放到需要安装的机器上运行自动安装脚本实现安装。
手动安装步骤:
查看当前gcc版本
gcc --version
下载依赖包
直接安装gcc的话会提示在安装gcc之前,必须安装GMP 4.2以上版本,MPFR2.3.1以上版本, MPC 0.8.0以上版本。
cd /tmp
wget https://ftp.gnu.org/gnu/gcc/gcc-4.8.2/
tar xvjf gcc-4.8.2.tar.bz2
wget http://10.88.162.17/software/gcc62/gmp-4.3.2.tar.bz2
tar xvjf gmp-4.3.2.tar.bz2
wget http://10.88.162.17/software/gcc62/mpc-0.8.1.tar.gz
tar xvzf mpc-0.8.1.tar.gz
wget http://10.88.162.17/software/gcc62/mpfr-2.4.2.tar.bz2
tar xvjf mpfr-2.4.2.tar.bz2
wget http://10.88.162.17/software/gcc62/binutils-2.27.tar.bz2
tar xvjf binutils-2.27.tar.bz2
编译gcc
按顺序安装gcc依赖的数学库,最后安装gcc
1.编译安装gmp,gcc依赖的数学库
cd /tmp/gmp-4.3.2
mkdir build && cd build
../configure --prefix=/opt/compiler/gcc-4.8.2
make -j20
make install
2.编译安装mpfr,gcc依赖的数学库
cd /tmp/mpfr-2.4.2
mkdir build && cd build
../configure --prefix=/opt/compiler/gcc-4.8.2 --with-gmp=/opt/compiler/gcc-4.8.2
make -j20
make install
3.编译安装mpc,gcc依赖的数学库
cd /tmp/mpc-0.8.1
mkdir build && cd build
../configure --prefix=/opt/compiler/gcc-4.8.2 --with-gmp=/opt/compiler/gcc-4.8.2 --with-mpfr=/opt/compiler/gcc-4.8.2
make -j20
make install
4.编译安装gcc
主要配置选项说明如下:
—prefix # 设置工具链安装路径
—disable-multilib # 关闭跨平台支持
—enable-languages # 可设置下列选项的一个或几个“all, ada, c, c++, fortran, go, jit, lto, objc, obj-c++”,默认不设置与all等效。
详细配置选项参考:https://gcc.gnu.org/install/configure.html
export LD_LIBRARY_PATH=/opt/compiler/gcc-4.8.2/lib/:$LD_LIBRARY_PATH
cd /tmp/gcc-4.8.2
mkdir build && cd build
../configure --prefix=/opt/compiler/gcc-4.8.2 --with-gmp=/opt/compiler/gcc-4.8.2 --with-mpc=/opt/compiler/gcc-4.8.2 --with-mpfr=/opt/compiler/gcc-4.8.2 --enable-checking=release --enable-ld=yes --enable-gold=yes --disable-multilib
make -j20
make install
编译binutils
cd /tmp/bintuils-2.27
mkdir build && cd build
../configure --prefix=/opt/compiler/gcc-4.8.2 --enable-ld=yes --enable-gold=yes --with-gmp=/opt/compiler/gcc-4.8.2 --with-mprf=/opt/compiler/gcc-4.8.2 --with-mpc=/opt/compiler/gcc-4.8.2
make -j20
make install
安装工具链
为不破坏系统环境,本文编译的工具链采用独立方式安装,安装目录为/opt/compiler/gcc-4.8.2,使用前应在系统环境变量中声明。
echo "export PATH=/opt/compiler/gcc-4.8.2/bin/:\$PATH" >> ~/.bash_profile
echo "export LD_LIBRARY_PATH=/opt/compiler/gcc-4.8.2/lib/:/opt/compiler/gcc-4.8.2/lib64/:\$LD_LIBRARY_PATH" >> ~/.bash_profile
. ~/.bash_profile
gcc --version
查看版本发现已更新为gcc 4.8.2
gcc、g++、gcj软连接
可以利用${destdir}/bin放在环境变量PATH中使用gcc-4.8.2,也可以用符号连接的方式实现。使用连接实现方式的好处是仍然可以使用系统上原来的旧版本的GCC编译器。查看原来gcc的路径,并把gcc-4.8.2中的gcc、g++、gcj等命令在原路径目录下分别做一个符号连接,这样,就可以分别使用gcc434、g++434、gcj434来调用GCC 4.1.2的gcc、g++、gcj完成对C、C++、JAVA程序的编译了。同时,仍然能够使用旧版本的GCC编译器中的gcc、g++等命令。
ln -s /opt/compiler/gcc-4.8.2/bin/gcc gcc482
ln -s /opt/compiler/gcc-4.8.2/bin/g++ g++482
ln -s /opt/compiler/gcc-4.8.2/bin/gcj gcj482
库路径的设置
将${destdir}/lib路径添加到环境变量LD_LIBRARY_PATH中,即在RH Linux下可以直接在命令行上执行
export LD_LIBRARY_PATH=/opt/compiler/gcc-4.8.2/bin:$LD_LIBRARY_PATH
但最好将路径添加到系统的配置文件中,这样就不必要每次都设置这个环境变量了,在文件/home/work/.bash_profile或者在/etc/skel/.bash_profile中添加下面两句:
LD_LIBRARY_PATH=:/opt/compiler/gcc-4.8.2/mpc-0.8.1/lib:/opt/compiler/gcc-4.8.2/gmp-4.3.2/lib:/opt/compiler/gcc-4.8.2/mpfr-2.4.2/lib:/opt/compiler/gcc-4.8.2/lib
export LD_LIBRARY_PATH
重启系统设置生效,或者执行命令
source /home/work/.bash_profile
然后利用gcc —version查看版本
再用新的编译命令(gcc412、g++412等)编译以前的C、C++程序,检验新安装的GCC编译器是否能正常工作。
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
精华推荐