https://blog.csdn.net/longji/article/details/80400339

01 ubuntu1604desktop_x64 安装gcc8.1.0
系统环境:

gcc版本:gcc version 5.4.0 20160609
build-essential is already the newest version (12.1ubuntu2).
libgmp-dev is already the newest version (2:6.1.0+dfsg-2).
libmpc-dev is already the newest version (1.0.3-1).
libmpfr-dev is already the newest version (3.1.4-1).
The following packages were automatically installed and are no longer required:
libqpdf17 linux-headers-4.4.0-79 linux-headers-4.4.0-79-generic
linux-image-4.4.0-79-generic linux-image-extra-4.4.0-79-generic
1
2
3
4
5
6
7
8
01.01 系统更新及安装依赖
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential libgmp-dev libmpfr-dev libmpc-dev
1
2
3
01.02 gcc代码下载及编译
wget ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-8.1.0/gcc-8.1.0.tar.xz
tar -Jxvf gcc-8.1.0.tar.xz
cd gcc-8.1.0
./contrib/download_prerequisites
cd ..
mkdir temp_gcc81 && cd temp_gcc81
../gcc-8.1.0/configure --prefix=/usr/local/gcc-8.1 --enable-threads=posix --disable-checking --disable-multilib
make
sudo make install
1
2
3
4
5
6
7
8
9
01.03 环境配置
设置gcc8.1的安装路径
sudo vim /etc/profile

export PATH="/usr/local/gcc-8.1/bin:$PATH"
1
01.04 测试
测试文件test_gcc81.cpp

#include <iostream>
int main(int argc,char** argv)
{
using namespace std;
cout << __cplusplus << endl;
return 0;
}
1
2
3
4
5
6
7
01.05 c++2a
编译 g++ --std=c++2a -o tg81 test_gcc81.cpp
运行结果:

./tg81
201709
1
2

01.06 gcc7.2
gcc7.2 在ubuntu1604_x64下的编译方式完全相同。
测试效果:

$ g++ --std=c++2a -o tg72 test_gcc81.cpp
g++: error: unrecognized command line option ‘--std=c++2a’; did you mean ‘--std=c++03’?
$ g++ --std=c++14 -o tg72 test_gcc81.cpp
$ ./tg72
201402
1
2
3
4
5
02 centos7.4x64 上编译安装gcc8.1.0
02.01 系统环境以安装依赖
#默认gcc版本
gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)

# 更新系统
sudo yum update
sudo yum upgrade

# 安装gcc编译依赖
sudo yum install gmp-devel mpfr-devel libmpc-devel
1
2
3
4
5
6
7
8
9
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.cn99.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
Package 1:gmp-devel-6.0.0-15.el7.x86_64 already installed and latest version
Package mpfr-devel-3.1.1-4.el7.x86_64 already installed and latest version
Package libmpc-devel-1.0.1-3.el7.x86_64 already installed and latest version
1
2
3
4
5
6
7
8
02.03 下载源码及编译安装
wget ftp://ftp.mirrorservice.org/sites/sourceware.org/pub/gcc/releases/gcc-8.1.0/gcc-8.1.0.tar.xz
tar -Jxvf gcc-8.1.0.tar.xz
mkdir temp_gcc81 && cd temp_gcc81
../gcc-8.1.0/configure --prefix=/usr/local/gcc-8.1 --enable-threads=posix --disable-checking --disable-multilib
make
sudo make install
1
2
3
4
5
6
02.03 测试效果:
$cat test_gcc81.cpp
#include <iostream>
int main(int argc,char** argv)
{
using namespace std;
cout << __cplusplus << endl;
return 0;
}

$g++ --std=c++2a -o tg81 test_gcc81.cpp
$./tg81
201709
1
2
3
4
5
6
7
8
9
10
11
12

---------------------
作者:longji
来源:CSDN
原文:https://blog.csdn.net/longji/article/details/80400339
版权声明:本文为博主原创文章,转载请附上博文链接!

linux 安装gcc8的更多相关文章

  1. 搜狗输入法linux安装 以及 12个依赖包下载链接分享

    搜狗输入法linux安装版,先安装各种依赖包,大概12个依赖,可能中途还需要其他依赖,可以效仿解决依赖问题.如图这12个文件要是手动点击下载,那也太笨点了,我们要用shell命令批量下载.命令如下:w ...

  2. linux安装php

    接上篇:linux安装apache 一.安装php 先安装libxml2库 [root@ctxsdhy package]# yum -y install libxml2-devel 最新地址在:htt ...

  3. linux安装oracle11g

    准备oracle安装文件 Oracle11gR2包含两个文件linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip,将这两个文件通过SS ...

  4. TODO:Linux安装PHP MongoDB驱动

    TODO:Linux安装PHP MongoDB驱动 PHP利于学习,使用广泛,主要适用于Web开发领域. MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统 ...

  5. Symantec Backup Exec 2010 Agent For Linux安装

    以前写过一篇文章介绍过Symantec Backup Exec 2012 Agent For Linux安装安装,今天介绍一下Symantec Backup Exec 2010 Agent For L ...

  6. Symantec Backup Exec 2012 Agent For Linux安装

    Backup Exec 2012 介绍 Backup Exec 2012 是一种为虚拟和物理环境提供保护的集成产品,能够简化备份和灾难恢复,并提供了无可匹敌的恢复功能.借助于强大的 Symantec ...

  7. linux 安装jdk

    1.Linux安装JDK步骤1. 先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,推荐SUN的官方网站www.sun.com,下载后放在/home目录中,当然其它地方也 ...

  8. Hadoop Linux安装

    Hadoop Linux安装 步骤流程 1.硬件准备 2.软件准备(推荐CDH) 3.将Hadoop安装包分发到各个节点下 4.安装JDK 5.修改/etc/hosts配置文件 6.设置SSH免密码登 ...

  9. 自己瞎捣腾的Win7下Linux安装之路-----理论篇

    接着上回说道,我把双系统做好啦,开心.... 之后我就在想几个问题: 1.在Ubuntu装好后,重启电脑却还是win7,等我用EasyBCD之后,才可选择使用装好的Ubuntu呢? 2.在用EasyB ...

随机推荐

  1. Ubuntu16.04修改IP及时生效

    1.Network Connetions 窗口管理器中修改IP 2.ifconfig查看网卡名字 3.刷新IP sudo ip addr flush enp2s0 4.sudo service net ...

  2. ELK + Filebeat 日志分析系统

    ELK + Filebeat 日志分析系统 架构图 环境 OS:CentOS 7.4 Filebeat: 6.3.2 Logstash: 6.3.2 Elasticsearch 6.3.2 Kiban ...

  3. nginx1.14.0日志打印

    nginx日志打印 http属性log_format来设置日志格式 ,参考 https://www.jb51.net/article/52573.htm  <nginx日志配置指令详解> ...

  4. 执行yum提示错误:rpmdb: BDB0113 Thread/process 424227/139826856310848 failed

    [问题]在执行yum安装或者其他命令时,有如下提示: [解决办法:重新构建rpm数据库] [root@cly ~]# cd /var/lib/rpm [root@cly rpm]# ls Basena ...

  5. hyper-v下的ubuntu虚拟机分辨率修改

    修改/etc/default/grub sudo vim /etc/default/grub 改变前: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash&qu ...

  6. 消息队列(Message Queue)简介及其使用

    消息队列(Message Queue)简介及其使用 摘要:利用 MSMQ(Microsoft Message Queue),应用程序开发人员可以通过发送和接收消息方便地与应用程序进行快速可靠的通信.消 ...

  7. Flask框架里的cookie和session

    # -*- encoding: utf-8 -*- #cookie 相关的操作,依赖与make_response库,调用cookie依赖request模块 from flask import Flas ...

  8. Caused by: javax.persistence.NonUniqueResultException: result returns more than one elements

    Caused by: javax.persistence.NonUniqueResultException: result returns more than one elements at org. ...

  9. resin4.0服务器远程调试说明

    1.开发环境介绍: 目前dev用resin 作为服务容器.服务调用之间过于复杂,要进行本地代码调试过于复杂,甚至无法进行.但是可以通过jvm的远程代码调试来达到本地代码调试的目的,步骤如下. 2.re ...

  10. __name__ __main__ 作用

    1 __name__ 在自己文件下面执行 就显示__main__ 2 如果__name__是在其他文件里面,然后通过当前文件调用到其他文件执行,就会显示的当前文件路劲的文件名结果: if __name ...