请使用root权限用控制台安装gcc5.1.0(重要)

1.首先把旧的gcc相关的编译工具安装好(没有安装会导致后面的错误)

yum upgrade gcc //升级gcc库

yum -y install gcc-c++// 安装g++库

2.下载gcc5.1.0

wget ftp://mirrors.kernel.org/gnu/gcc/gcc-5.1.0/gcc-5.1.0.tar.gz

3.解压gcc5.1.0

tar -zxvf gcc-5.1.0.tar.gz

4.下载依赖项

cd gcc-5.1.0    //进入解包后的gcc文件夹

./contrib/download_prerequisites    //下载依赖项

5.安装gmp

cd gmp  //进入gmp目录

mkdir build  //创建输出目录

cd build  //进入输出目录

../configure --prefix=/usr/local/gcc/gmp-4.3.2  //生成makefile文件

make && make install  //编译并安装

6.安装mpfr

cd ../../mpfr  //回到gcc-5.1.0目录进入mpfr目录

mkdir build  //创建输出目录

cd build    //进入输出目录

../configure --prefix=/usr/local/gcc/mpfr-2.4.2 --with-gmp=/usr/local/gcc/gmp-4.3.2  //生成makefile文件 with依赖项

make && make install  //编译并安装

7.安装mpc

cd ../../mpc  //回到gcc-5.1.0目录进入mpc目录

mkdir build  //创建输出目录

cd build    //进入输出目录

../configure --prefix=/usr/local/gcc/mpc-0.8.1 --with-mpfr=/usr/local/gcc/mpfr-2.4.2 --with-gmp=/usr/local/gcc/gmp-4.3.2  //生成makefile文件 with依赖项

make && make install  //编译并安装

8.添加共享库路径,su到root编辑ld.so.conf文件,添加如下内容到文件中:

(注:用find命令查找ld.so.conf文件,用vim命令编辑ld.so.conf文件)

/usr/local/gcc/gmp-4.3.2/lib

/usr/local/gcc/mpfr-2.4.2/lib

/usr/local/gcc/mpc-0.8.1/lib

wq保存退出,执行ldconfig命令 (此步会重新加载lib).

9.安装gcc5.1.0(先回到gcc5.1.0的上层目录)(此步结束后gcc5.1.0已安装完成)

mkdir gcc-build-5.1.0 //创建输出目录

cd gcc-build-5.1.0   //进入输出目录

../gcc-5.1.0/configure --enable-checking=release --enable-languages=c,c++//生成makefile文件

make //编译gcc5.1.0

make install//安装gcc5.1.0

10.检查gcc5.1.0的版本

gcc -v

g++ -v

11.卸载旧版本 (??不知道需不需要)

yum remove gcc

yum remove gcc-c++

updatedb

cd /usr/bin

ln -s /usr/local/gcc/bin/gcc gcc

ln -s /usr/local/gcc/bin/g++ g++

12 添加man帮助 (??)

vi /etc/man.config

添加gcc的man路径到配置文件中

MANPATH /usr/local/gcc/share/man

保存退出即可生效,可使用man gcc查看帮助

gcc5.1.0升级指南的更多相关文章

  1. Spring Boot 2.0 升级指南

    Spring Boot 2.0 升级指南 前言 Spring Boot已经发布2.0有5个月多,多了很多新特性,一些坑也慢慢被填上,最近有空,就把项目中Spring Boot 版本做了升级,顺便整理下 ...

  2. Vue 3.0 升级指南

    本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 2020年9月18日Vue 3.0正式发布,距离2016年10月1日Vue ...

  3. 李洪强iOS开发之-环信02.1_环信 SDK 2.x到3.0升级文档

    李洪强iOS开发之-环信02.1_环信 SDK 2.x到3.0升级文档 SDK 2.x 至 3.0 升级指南 环信 SDK 3.0 升级文档 3.0 中的核心类为 EMClient 类,通过 EMCl ...

  4. Angular4.0.0正式发布,附新特性及升级指南

    本文首发地址:Angular4.0.0正式发布,附新特性及升级指南 作者|孙薇 编辑|尾尾 经历了6个RC版本之后,Angular项目组终于发布了新版,即正式版 Angular 4.0.0.新版的 A ...

  5. Apache ShardingSphere 5.0.0 内核优化及升级指南

    经过近两年时间的优化和打磨,Apache ShardingSphere 5.0.0 GA 版终于在本月正式发布,相比于 4.1.1 GA 版,5.0.0 GA 版在内核层面进行了大量的优化.首先,基于 ...

  6. CentOS 7 升级 gcc-4.8.5 到 gcc-5.4.0

    文章目录 1.环境介绍 2.下载gcc-5.4.0源码包 3.编译安装gcc 4.验证gcc版本 5.更新gcc连接 1.环境介绍 [root@localhost ~]# gcc -v Using b ...

  7. Dolphin Scheduler 1.1.0升级1.2.0避坑指南

    本文章经授权转载 组件介绍 Apache Dolphin Scheduler是一个分布式易扩展的可视化DAG工作流任务调度系统.致力于解决数据处理流程中错综复杂的依赖关系,使调度系统在数据处理流程中开 ...

  8. 企业IT管理员IE11升级指南【17】—— F12 开发者工具

    企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...

  9. 企业IT管理员IE11升级指南【15】—— 代理自动配置脚本

    企业IT管理员IE11升级指南 系列: [1]—— Internet Explorer 11增强保护模式 (EPM) 介绍 [2]—— Internet Explorer 11 对Adobe Flas ...

随机推荐

  1. VirtualBox中的虚拟机要如何设置,才能够上网

    VirtualBox中有4种网络连接方式:1. NAT2. Bridged Adapter3. Internal4. Host-only Adapter 一般设置成NAT网路就可以,但是由于我在公司上 ...

  2. Python全栈之路8--迭代器(iter)和生成器(yield)

    一.生成器( iter ) 从Python2.2起,生成器提供了一种简洁的方式帮助返回列表元素的函数来完成简单和有效的代码. 它基于yield指令,允许停止函数并立即返回结果.此函数保存其执行上下文, ...

  3. linux学习之——基础命令

    Linux体系基础命令: Linux是一个命令行组成的操作体系!精华在命令行,岂论图形界面成长到什么水平这个原理是不会变的,Linux命令有许多壮大的效用:从简单的磁盘操作.文件存取.到举办庞大的多媒 ...

  4. Sql Server 孤立用户解决办法

    Sql Server 孤立用户 是我们经常遇到的事情,今天详细的梳理了下,希望能帮到你 当把用户数据库从一台 Sql Server 使用备份和恢复的方式迁移到另一台服务器.数据库恢复以后,原先用户定义 ...

  5. Exception loading sessions from persistent storage 这个问题的解决

    现在经常在做一个项目时重启时会报: 严重: Exception loading sessions from persistent storage的问题. 这个问题的原因是tomcat的session持 ...

  6. php中英文截取无乱码 包括全角下的字符

    符合UTF-8下,如果GBK下  改为  $content .= $str[$sing].$str[$sing+1];        $sing += 3; 改为 $sing += 2; /**    ...

  7. C# 常见面试题1

    1.WinForm遍历控件 foreach (System.Windows.Forms.Control control in this.Controls) { if (control is Syste ...

  8. git --如何撤销已放入缓存区(Index区)的修改

    修改或新增的文件通过 git add --all 命令全部加入缓存区(index区)之后,使用 git status 查看状态(git status -s 简单模式查看状态,第一列本地库和缓存区的差异 ...

  9. Hibernate映射之OneToOne(第二篇)

    这是在项目中实际遇到的一个问题,纠结了很久.一开始参考mkyong的 ,两边都写OneToOne ,后来查看了一下项目经理在原来一些模块中的写法. 学习一下: 首先是E-R图:  一个货品可以进行多次 ...

  10. 【基础知识】.Net基础加强08天

    一. 文件的读取 1. 有FileStrem,为什么还要StreamWriter和StreamRead StreamWriter和StreamRead是用来读取文本文件的,每次只读取一行文本文件 二. ...