CentOS6.5手动升级gcc4.8.2

一、简易安装

操作环境 CentOS6.5 64bit,原版本4.4.7,不能支持C++11的特性~,希望升级到4.8.2

不能通过yum的方法升级,需要自己手动下载安装包并编译

1.1 获取安装包并解压

wget http://ftp.gnu.org/gnu/gcc/gcc-4.8.2/gcc-4.8.2.tar.bz2
tar -jxvf gcc-4.8.2.tar.bz2

当然,http://ftp.gnu.org/gnu/gcc  里面有所有的gcc版本供下载,最新版本已经有4.9.2啦.

1.2 下载供编译需求的依赖项

参考文献[1]中说:这个神奇的脚本文件会帮我们下载、配置、安装依赖库,可以节约我们大量的时间和精力。

cd gcc-4.8.0 
./contrib/download_prerequisites 

1.3 建立一个目录供编译出的文件存放

mkdir gcc-build-4.8.2
cd gcc-build-4.8.2

1.4 生成Makefile文件

../configure -enable-checking=release -enable-languages=c,c++ -disable-multilib

1.5 编译(注意:此步骤非常耗时)

make -j4

-j4选项是make对多核处理器的优化,如果不成功请使用 make,相关优化选项可以移步至参考文献[2]。

我在安装此步骤时候出错,错误描述:

compilation terminated.
make[5]: *** [_gcov_merge_add.o] 错误 1
make[5]: Leaving directory `/home/imdb/gcc-4.8.2/gcc-build-4.8.2/x86_64-unknown-linux-gnu/32/libgcc‘
make[4]: *** [multi-do] 错误 1
make[4]: Leaving directory `/home/imdb/gcc-4.8.2/gcc-build-4.8.2/x86_64-unknown-linux-gnu/libgcc‘
make[3]: *** [all-multi] 错误 2
make[3]: *** 正在等待未完成的任务....
make[3]: Leaving directory `/home/imdb/gcc-4.8.2/gcc-build-4.8.2/x86_64-unknown-linux-gnu/libgcc‘
make[2]: *** [all-stage1-target-libgcc] 错误 2
make[2]: Leaving directory `/home/imdb/gcc-4.8.2/gcc-build-4.8.2‘
make[1]: *** [stage1-bubble] 错误 2
make[1]: Leaving directory `/home/imdb/gcc-4.8.2/gcc-build-4.8.2‘
make: *** [all] 错误 2

大概看看,错误集中在 x86_64unknown-linux-gnu/32/libgcc 和 x86_64-unknown-linux-gnu/libgcc

根据参考文献[3],安装如下两个软件包(仅用于CentOS6.X):

sudo yum -y install glibc-devel.i686 glibc-devel

过程中CPU基本满载:

1.6、安装

sudo make install

二、验证安装

重启,然后查看gcc版本:

gcc -v

尝试写一个C++11特性的程序段 tryCpp11.cc,使用了shared_ptr

 1 //tryCpp11.cc
 2 #include <iostream>
 3 #include <memory>
 4
 5 int main()
 6 {
 7     std::shared_ptr<int> pInt(new int(5));
 8     std::cout << *pInt << std::endl;
 9     return 0;
10 }

验证文件:

g++ -std=c++11 -o tryCpp11 tryCpp11.cc
./tryCpp11

三、其他安装:

- 在Ubuntu机器上安装:参考文献[3]

- 非简易安装:参考文献[4]

- 多个gcc版本共存问题:暂无

四、参考文献

[1] 参考的主要安装步骤 http://www.cnblogs.com/ytjjyy/p/4008096.html

  注:这篇文章的后半部分解决动态库的方法非常有用处

时间: 2024-10-27 10:07:14

CentOS6.5手动升级gcc4.8.2的相关文章

CentOS6.8手动安装MySQL5.6

CentOS6.8手动安装MySQL5.6 众所周知,mysql5.7推出后有很多没有填好的坑,对于老的系统和项目兼容性也存在问题,所以现在普遍的web项目还是应该跑在centos6.8+mysql5.6的环境之下,今天主要说一下mysql5.6如何编译安装的具体步骤. 1.安装mysql5.6依存包 2.下载编译包 wget https://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.

11.2.0.4手动升级到12.1.0.2

1.手动升级前工作(1).备份数据库(2).运行pre-upgrade information tool(如果是使用DBUA升级,会自动执行该脚本工具) $ cd /u01/app/oracle12/product/12.1.0/dbhome_1/rdbms/admin $ sqlplus '/as sysdba' SQL*Plus: Release 11.2.0.4.0 Production on Thu Aug 6 08:26:57 2015 Copyright (c) 1982, 2013

烂泥:centos6 yum方式升级内核

本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 最近没有时间好久没有写文章了,今天由于需要安装docker学习虚拟容器的知识,需要升级OS的内核.目前我这边使用的OS是centos6.5,内核是2.6版本的,如下: cat /etc/issue uname -r 因为docker的使用需要3.0以上内核的支持,当然也是可以使用2.6的内核,当时可能会出现不可控制的问题,所以需要我们升级内核版本. 要升级内核OS到3.1以上,需要以下

sdk手动升级以及说明

首先,我们知道sdk一般包含有以及目录: 1.add-ons里面保存着附加库,比如googld maps等. 2.docs这里面是android sdk api参考文档,所有的api都可以在这里查到. 3.platforms是每个平台的sdk真正的文件里面会根据api level划分的sdk版本,截止到现在共有下面这些版本: 手动升级方法:下载了sdk-platforms之后,把文件夹放入sdk下的platforms文件夹就可以了. 4.platform-tools保存着一些通用的工具,比如,a

Centos6.5 glibc 升级

libnuma.so.1共享库安装yum install libnuma*http://blog.itpub.net/8183550/viewspace-1820856/ 运行以下命令检查动态库c++:strings /usr/lib64/libstdc++.so.6|grep GLIBC 查看系统glibc库版本可使用如下命令: strings /lib64/libc.so.6 |grep GLIBC_ Centos6.5 glibc 升级 http://hardog.net/2016/03/

AvrStudio 6.1 jtagice3固件手动升级

原来的2.15需要升级到3.25 直接升级总是提示错误. 找了很多资料后发现手动升级的办法: 步骤1:打开安装目录,atbackend目录下有个atfw手动升级的工具 .(需要在命令行中升级). 命令行中:atfw -h查看帮助. 首先要找到最新版本的fireware..在安装目录tools下把jtabice3_fw.zip复制到手动升级的目录中 手动命令:atfw -t jtagice3 -a jtagice3_fw.zip 升级成功. 在设备管理器中看到设备已经变成jtagice3 data

方案:手动升级WordPress系统

对于WordPress系统及时进行更新维护是十分必须的操作,更新维护不仅可以更新系统服务功能,还能够完善安全系统.      如果你是虚拟主机的用户,可以使用FTP账户进行自动更新服务,但是如果你是VPS用户,我并不建议您开辟FTP后台服务,而是建议您使用手动升级操作,保证服务器的安全性. WordPress系统的手动升级是非常简单的,分为以下几步:            1. 下载最新的安装包 Link            2. 删除安装包中的wp-content目录,wp-admin/in

centos6 yum方式升级内核【转】

最近没有时间好久没有写文章了,今天由于需要安装docker学习虚拟容器的知识,需要升级OS的内核.目前我这边使用的OS是centos6.5,内核是2.6版本的,如下: cat /etc/issue uname -r 因为docker的使用需要3.0以上内核的支持,当然也是可以使用2.6的内核,当时可能会出现不可控制的问题,所以需要我们升级内核版本. 要升级内核OS到3.1以上,需要以下几个步骤. 一.安装elrepo的yum源 升级内核需要使用elrepo的yum源,在安装yum源之前还需要我们

手动升级kubernetes集群

手动升级kubernetes集群 在我最开始写作本书的时候,kubernetes刚发布1.6.0版本,而kubernetes基本按照每三个月发布一个大版本的速度迭代,为了使用新特性和只支持新版本kubernetes的配套软件,升级kubernetes就迫在眉睫,在此我们使用替换kubernets的旧的二进制文件这种暴力的方式来升级测试集群,若升级生产集群还望三思. 另外,自kubernetes1.6版本之后发布的1.7和1.8版本又增加了一些新特性,参考: Kubernetes1.7更新日志 K