首先 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
1.首先下载源代码
wgethttp://ftp.gnu.org/gnu/gcc/gcc-4.9.2/gcc-4.9.2.tar.bz2
2.解压
tar -jxvf gcc-4.9.2.tar.bz2
3.下载编译所需的依赖项
cd gcc-4.9.2
./contrib/download_prerequisites
cd ..
4.建立编译输出目录
mkdir gcc-build-4.9.2
5.进入此目录,执行以下命令,生成makefile文件
cd gcc-build-4.9.2
../gcc-4.9.2/configure--enable-checking=release --enable-languages=c,c++ --disable-multilib
gcc 编译参数说明:
--enable-languages //指定 gcc 能编译哪些语言的文件,每种语言用逗号分隔, 例如 c,c++,java
--disable-multilib //默认gcc 能在32位系统上将代码编译成64位程序,或者在64位系统上编译成32位程序,如果加上这个编译选项则表示关闭这个gcc的交叉编译功能。
6.执行以下命令进行编译
make -j4 //机器是双核,故用j4能加快编译速度
去喝个咖啡聊聊天,然后就编译好了
期间出现了如下问题
错误一:
configure: error: C++ compiler missing orinoperational
make[2]: \*** [configure-stage1-libcpp]Error 1
make[2]: Leaving directory`/home/liukk/gcc-4.8.1'
make[1]: \*** [stage1-bubble] Error 2
make[1]: Leaving directory `/home/liukk/gcc-4.8.1'
make: \*** [all] Error 2
解决办法:
安装如下内容:
yum install gcc-c++
错误二:
原因是:阿里云最低配置服务器,单核、512MB物理内存,内存不足导致的,由于阿里云的CentOS镜像没有划分SWAP分区,后来添加了Swap区,报错依旧。原来是/etc/sysctl.conf中设置的swappiness的值为0,这个值的默认值应该是60,报错解决
C++11标准在2011年8月份获得一致通过,这是自1998年后C++语言第一次大修订,对C++语言进行了改进和扩充。随后各编译器厂商都各自实现或部分实现了C++中的特性。
目标:升级GCC到4.8.2,以支持C++11。
1. 获取GCC 4.8.2包:wget http://gcc.skazkaforyou.com/releases/gcc-4.8.2/gcc-4.8.2.tar.gz;
2. 解压缩:tar -xf gcc-4.8.2.tar.gz;
3. 进入到目录gcc-4.8.2,运行:./contrib/download_prerequisites。这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。
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的安装目录5. 验证:gcc -v;或者g++ -v,如果显示的gcc版本仍是以前的版本,就需要重启系统;或者可以查看gcc的安装位置:which gcc;然后在查看版本 /usr/local/bin/gcc -v,通常gcc都安装在该处位置,如果显示为;
则表示已经升级成功。
CentOS 6.5 编译安装 gcc-4.9.2
最新推荐文章于 2024-03-28 23:55:07 发布