centos7下安装gcc7
之前写过在linux下升级gcc 4.8至gcc 4.9的过程,现在gcc最新的版本是8,有些软件必须是gcc 7或者以上的版本才可以编译,比如clickhouse,gcc 7的安装过程和之前基本上一样,但是安装要独立安装,不要覆盖系统的gcc,因为大部分软件还是使用系统的gcc编译,这里gcc 7是分开使用,下面简单说一下安装的过程,
这里安装的是gcc 7.3,下载页面:http://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.3.0/,下载的包为:gcc-7.3.0.tar.xz
1). 安装gcc所需要的依赖
新版的gcc同样是依赖gmp,mpfr,mpc这3个包,版本要求不需要太高,编译出错时会给出提示,具体参考之前的文章安装即可,除了编译源码安装之外还可以使用下面的yum在线安装:
yum install gmp-devel
yum install mpfr-devel
yum install libmpc-devel
这样很快就搞定了.
2). 编译gcc 7.3
释放安装包:
xz -d gcc-7.3..tar.xz
tar -xvf gcc-7.3..tar
cd gcc-7.3./
编译源码:
./configure --prefix=/monchickey/gcc7 --disable-multilib # 注意指定到自己的目录,第二个参数是关闭32位指令,仅使用64位.
make -j4
make install
然后又是漫长的等待,比gcc 4的编译还要慢,基本上需要1个多小时
3). 相关配置
编译完成之后执行 /monchickey/gcc7/bin/gcc -v 就可以看到版本号了,为了便于使用,可以执行下面命令建立软链接:
ln -s /monchickey/gcc7/bin/gcc /usr/bin/gcc-
ln -s /monchickey/gcc7/bin/g++ /usr/bin/g++-
这样就可以直接执行gcc-7或者是g++-7调用命令了,很多软件编译时一般不直接调用gcc或者g++命令,而是用CC和CXX代替,所以需要使用gcc 7进行编译时可以执行命令 export CC=gcc- CXX=g++- 临时导入环境变量,这样本次编译就可以使用gcc 7了,下次进入shell时变量消失,不影响原有的环境,当然具体配置还需要参考软件的文档,不过很多软件编译时都用了这种方式.
centos7下安装gcc7的更多相关文章
- CentOS7 下 安装 supervisor以及使用
CentOS7 下 安装 supervisor 以及使用 手动安装 [注] linux环境必须安装 python 1.获取supervisor包:[https://pypi.python.org/py ...
- Linux CentOs7 下安装 redis
Linux CentOs7 下安装 redis 请将以下命令放入linux命令行中运行 如果安装过程前没有安装GCC请先安装 命令如下 $ yum install gcc-c++ $ wget ht ...
- Centos7下安装配置Redsocks
Redsocks是一个开源的网络程序,代码依赖开源的libevent网络库.Redsocks允许你将所有TCP连接重定向到SOCKS或HTTPS代理,比如Shadowsocks(Centos7下安装配 ...
- CentOS7下安装SVN服务端
CentOS7下安装SVN服务 1. yum命令即可方便的完成安装# sudo yum install subversion 测试安装是否成功:# svnserve --version 更改svn的默 ...
- centOS7下安装GUI图形界面
1.如何在centOS7下安装GUI图形界面 当你安装centOS7服务器版本的时候,系统默认是不会安装GUI的图形界面程序,这个需要手动安装CentOS7 Gnome GUI包. 2.在系统下使用命 ...
- CentOS7下安装MySQL并配置远程连接
一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...
- Docker学习笔记3:CentOS7下安装Docker-Compose
Docker-Compose是一个部署多个容器的简单但是非常必要的工具. 安装Docker-Compose之前,请先安装 python-pip,请参考我的另一篇博文CentOS7下安装python-p ...
- docker(一) Centos7下安装docker
docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...
- centos7 下 安装部署nginx
centos7 下 安装部署nginx 1.nginx安装依赖于三个包,注意安装顺序 a.SSL功能需要openssl库,直接通过yum安装: #yum install openssl b.gzip模 ...
随机推荐
- 服务端工程师入门与进阶 Java 版
前言 欢迎加入我们.这是一份针对实习生/毕业生的服务端开发入门与进阶指南.遇到问题及时问你的 mentor 或者直接问我. 建议: 尽量用google查找技术资料. 有问题在stackoverflow ...
- TP5.1:request请求对象(使用四种方式获取)
准备: 在index/controller下创建一个名为requests.php的文件(注意:不要起名为request,因为它是关键字,不被允许起名) 动态方法和静态方法的区别: 静态方法:publi ...
- java lambda 的用法
一.打印数组 String[] s = "fdsfsdfds".split(""); Stream<String> str = Stream.of( ...
- SpringBatch 错误积累
1.如果nextStep在该JOB中还没有配置,也就是说nextStep还不存在的情况下,就会报错 <end on="EIXT WITH IMBALANCE" /> & ...
- PostgreSQL主要优势
PostgreSQL主要优势: 1. PostgreSQL完全免费,而且是BSD协议,如果你把PostgreSQL改一改,然后再拿去卖钱,也没有人管你,这一点很重要,这表明了PostgreSQL数据 ...
- 【AtCoder】CODE FESTIVAL 2017 qual A
A - Snuke's favorite YAKINIKU -- #include <bits/stdc++.h> #define fi first #define se second # ...
- SparseArray源码解析
转载自SparseArray源码解析 No1: Android官方推荐:当使用HashMap(K, V),如果K为整数类型时,使用SparseArray的效率更高. No2: HashMap是使用数组 ...
- uva1354 天平难题 【位枚举子集】||【huffman树】
题目链接:https://vjudge.net/contest/210334#problem/G 转载于:https://blog.csdn.net/todobe/article/details/54 ...
- Python3 图像边界识别
# -*- coding: utf-8 -*- """ Created on Wed Mar 7 11:04:15 2018 @author: markli " ...
- 不一样的go语言-athens私仓安装
前言 本系列文章曾多次提及go的依赖管理,提到了私仓,构件系统等概念,也曾提及当前流行的go构件系统,如athens,jfrog artifactory.鉴于jfrog的收费特性,本文只选择ath ...