linux 安装gcc8
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的更多相关文章
- 搜狗输入法linux安装 以及 12个依赖包下载链接分享
搜狗输入法linux安装版,先安装各种依赖包,大概12个依赖,可能中途还需要其他依赖,可以效仿解决依赖问题.如图这12个文件要是手动点击下载,那也太笨点了,我们要用shell命令批量下载.命令如下:w ...
- linux安装php
接上篇:linux安装apache 一.安装php 先安装libxml2库 [root@ctxsdhy package]# yum -y install libxml2-devel 最新地址在:htt ...
- linux安装oracle11g
准备oracle安装文件 Oracle11gR2包含两个文件linux_11gR2_database_1of2.zip和linux_11gR2_database_2of2.zip,将这两个文件通过SS ...
- TODO:Linux安装PHP MongoDB驱动
TODO:Linux安装PHP MongoDB驱动 PHP利于学习,使用广泛,主要适用于Web开发领域. MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统 ...
- Symantec Backup Exec 2010 Agent For Linux安装
以前写过一篇文章介绍过Symantec Backup Exec 2012 Agent For Linux安装安装,今天介绍一下Symantec Backup Exec 2010 Agent For L ...
- Symantec Backup Exec 2012 Agent For Linux安装
Backup Exec 2012 介绍 Backup Exec 2012 是一种为虚拟和物理环境提供保护的集成产品,能够简化备份和灾难恢复,并提供了无可匹敌的恢复功能.借助于强大的 Symantec ...
- linux 安装jdk
1.Linux安装JDK步骤1. 先从网上下载jdk(jdk-1_5_0_02-linux-i586.rpm) ,推荐SUN的官方网站www.sun.com,下载后放在/home目录中,当然其它地方也 ...
- Hadoop Linux安装
Hadoop Linux安装 步骤流程 1.硬件准备 2.软件准备(推荐CDH) 3.将Hadoop安装包分发到各个节点下 4.安装JDK 5.修改/etc/hosts配置文件 6.设置SSH免密码登 ...
- 自己瞎捣腾的Win7下Linux安装之路-----理论篇
接着上回说道,我把双系统做好啦,开心.... 之后我就在想几个问题: 1.在Ubuntu装好后,重启电脑却还是win7,等我用EasyBCD之后,才可选择使用装好的Ubuntu呢? 2.在用EasyB ...
随机推荐
- Ignite(二): 架构及工具
1.集群和部署 Ignite集群基于无共享架构,所有的集群节点都是平等的,独立的,整个集群不存在单点故障. 通过灵活的Discovery SPI组件,Ignite节点可以自动地发现对方,因此只要需要, ...
- 【Dubbo源码学习】负载均衡算法(1)-随机算法
/** * random load balance. * */public class RandomLoadBalance extends AbstractLoadBalance { public s ...
- python中类似三元表达式的写法
python中没有其它语言中的三元表达式,如: a = x > y ? m : n; python中的类似写法为: a = 1 b = 2 h = "" h = " ...
- python3学习笔记13(数据结构)
参考http://www.runoob.com/python3/python3-data-structure.html 列表 列表是可修改的. 列表方法让列表可以方便的作为一个堆栈来使用,堆栈作为特定 ...
- SpringBoot与SpringCloud的版本对应详细版
大版本对应: Spring Boot Spring Cloud 1.2.x Angel版本 1.3.x Brixton版本 1.4.x stripes Camden版本 1.5.x Dalston版本 ...
- python 代理的使用
这里分享一个测试ip的网址 http://ip.filefab.com/index.php scrapy 随机请求头和代理ip的使用原理 import random # 添加一个中间键 cla ...
- JS代码简单一段即可破解QQ空间删除说说
代码如下: 简单的一段代码即可搞定啦!!是不是很简单! var delay = 1000; function del() { document.querySelector('.app_canvas_f ...
- 课上补做:用C语言编程实现ls命令
课上补做:用C语言编程实现ls命令 一.有关ls ls :用来打印当前目录或者制定目录的清单,显示出文件的一些信息等. ls -l:列出长数据串,包括文件的属性和权限等数据 ls -R:连同子目录一同 ...
- jar包冲突排解方法(sbt)
jar包依赖冲突,版本不兼容会导致各种各样的问题.这里推荐一款sbt插件用于查找项目中的jar包依赖关系,通过该插件可以轻松的看出某个jar包依赖哪些jar,以及某个jar被哪些jar所依赖.此外该插 ...
- 1-web.xml配置说明
编写第一个Servlet程序 重要的在于如何去配置项目中的web.xml文件 <servlet-class> 设置servlet程序全限定路径 也就是在项目的中路径 <servl ...