公司的机器上默认是GCC4.4.6,为了完整的体验C++11,可以自己编译一个GCC4.8.2出来(自带了更高版本的glibc)。
以下是备忘。
1、下载GCC源码以及依赖库
gmp ftp://ftp.gnu.org/gnu/gmp/gmp-6.1.1.tar.bz2
mpfr ftp://ftp.gnu.org/gnu/mpfr/mpfr-3.1.5.zip
mpc ftp://ftp.gnu.org/gnu/mpc/mpc-1.0.2.tar.gz
gcc http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2
2、解压
tar -jxvf gmp-6.1.1.tar.bz2
unzip mpfr-3.1.5.zip
tar -xzvf mpc-1.0.2.tar.gz
tar -jxvf gcc-4.8.2.tar.bz2
3、把依赖库放到gcc源目录中
mv gmp-6.1.1 ./gcc-4.8.2/gmp
mv mpfr-3.1.5 ./gcc-4.8.2/mpfr
mv mpc-1.0.2 ./gcc-4.8.2/mpc
4、编译
cd gcc-4.8.2/
mkdir build
cd build/
../configure --prefix=/usr/local/cswuyg/local/gcc-4.8.2
make -j16 && make install
5、使用
GCC_4_8_2_PATH=/usr/local/app/cswuyg/local/gcc-4.8.2
export PATH=${GCC_4_8_2_PATH}/bin:$PATH
export LIBRARY_PATH=${GCC_4_8_2_PATH}/lib64:$LIBRARY_PATH
export CPLUS_INCLUDE_PATH=${GCC_4_8_2_PATH}/include:$CPLUS_INCLUDE_PATH
export C_INCLUDE_PATH=${GCC_4_8_2_PATH}/include:$C_INCLUDE_PATH
export LD_LIBRARY_PATH=${GCC_4_8_2_PATH}/lib64:$LD_LIBRARY_PATH
将以上5行代码保存到~/.gcc482 文件中,每次需要使用gcc4.8.2之前,执行: source ~/.gcc482
LD_LIBRARY_PATH 是为了升级glibc。
本文所在:http://www.cnblogs.com/cswuyg/p/6220700.html