Linux安装C++环境
centos
- 安装gcc-c++
yum install gcc-c++
- 安装CMake
yum install cmake
切换gcc版本
安装devtoolset-x
安装devtoolset-3
- 安装scl,方便切换gcc版本
yum install centos-release-scl scl-utils
参考
2. 安装devtoolset-3
- 部分安装
rpm -ivh "https://www.softwarecollections.org/repos/rhscl/devtoolset-3/epel-6-x86_64/noarch/rhscl-devtoolset-3-epel-6-x86_64-1-2.noarch.rpm"
yum install devtoolset-3-binutils devtoolset-3-gdb devtoolset-3-gcc-c++ devtoolset-3-gcc
- 完整安装,较大
yum install devtoolset-3
- 切换到devtoolset-3环境
scl enable devtoolset-3 bash
gcc -v # 4.9
# 退出gcc环境
exit
安装devtoolset-7
和devtoolset-3相似
- 安装
yum install devtoolset-7-binutils devtoolset-7-gdb devtoolset-7-gcc-c++ devtoolset-7-gcc
- 切换环境
scl enable devtoolset-7 bash
gcc -v # 7.3
- 设置全局变量
# export CC=/opt/rh/devtoolset-3/root/usr/bin/gcc
# export CPP=/opt/rh/devtoolset-3/root/usr/bin/cpp
# export CXX=/opt/rh/devtoolset-3/root/usr/bin/c++
远程调试
yum install gdb -y
yum install gdb-gdbserver -y
Ubuntu
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
注意,在修改镜像后,需要执行命令:
apt update; apt upgrade
2、更新
sudo apt-get update
sudo apt upgrade
3、如何卸载Ubuntu软件
sudo dpkg -i gcc
- 删除快捷方式
sudo update-alternatives --remove-all gcc
sudo update-alternatives --remove-all g++
Linux软件安装命令
4、安装 g++ 和 gcc
sudo apt-get install gcc-7
sudo apt-get install g++-7
(如果镜像中找不到安装包,可以不加 -7版本)
5、将gcc和g++绑定到新安装的版本上
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 20
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-7 20
6、检查是否安装成功
gcc -v
g++ -v
7、安装Cmake
apt install cmake
cmake --version
二、g++ gcc的版本切换
因为笔者安装了多个版本,在以上绑定后,版本仍显示4.9,而不是7.为此虚做版本切换:
如果你的Ubuntu中安装了多个版本的g++或者gcc,比如4.8 4.9 5.5等多个版本,想要切换时,打开新的终端,并输入
sudo update-alternatives --config g++
按照提示数字选择想要使用的版本。
即可选择g++版本,gcc同理,在终端中输入
sudo update-alternatives --config gcc
选择相应数字,即选择想要使用的版本。
三、linux g++开启C++11/14支持
sudo vim ~/.bashrc
在some more ls aliases注释块的地方添加下面这两行:
alias g++11='g++ -g -Wall -std=c++11'
alias g++14='g++ -g -Wall -std=c++14'
相当于用别名的方式,简化输入。在编译的时候,仅需要输入g++11或者 g++14即可。
Linux安装C++环境的更多相关文章
- linux 安装 node 环境
本篇学习的分享主要说在linux 安装 node 环境,个人也是在腾讯云的实验室课程学习的,这里只是个人的一个学习记录, 大家也可以去腾讯的实验室来体验一下,教程十分详细易学. 1 .安装 Node. ...
- linux安装maven环境
linux安装maven环境 一. 下载压缩包: 官网地址: http://maven.apache.org/download.cgi 或者百度网盘链接:https://pan.baidu.com/s ...
- Linux 安装nodejs环境以及路径配置
linux安装nodejs有2种方式一种简单的,解压即可用:另一种,通过下载source code ,通过编译,make,make install命令来安装. 这里只讲第一种,简单方便.不需要执行ma ...
- Linux安装python环境脚本
自动安装python环境的脚本 1.首先判断是不是root用户 2.判断是否安装 3.是否下载成功(网络可能有问题) 4.是否解压成功(文件下载可能缺少) 5.安装配置python环境 # codin ...
- Linux 安装Mono环境 运行ASP.NET(一)
1.先看一下Linux环境下面请求的过程,(画的不是很好,简单的了解一下原理.) .NET跨平台其实需要这三个关键:编译器.CLR和基础类库.在.NET下我们编写一个最简单的"Hello W ...
- Linux 安装Mono环境 运行ASP.NET(二)
一.安装libgdiplus 前面我们已经安装了apr.apr_util.pcre和httpd apache .现在我们来安装libgdiplus Libgdiplus是一个Mono库,用于对 ...
- linux安装java环境
在linux下安装JDK如下: 第一步:查看Linux自带的JDK是否已安装 (1)查看已经安装的jdk: [root@web-server ~]# rpm -qa|grep jdk ← 查看jdk的 ...
- Linux安装开发环境,必须配置的环节(Fedora15版本)
前提:U盘安装fedora:<[原]U盘安装Fedora15 DVD镜像>.<Grub引导安装Fedora15> 1.设置代理上网:<fedora 配置网络代理> ...
- 转 linux安装jdk环境(多种方式)
linux系统通用安装通过tar.gz压缩包安装此方法适用于绝大部分的linux系统 1.先下载tar.gz的压缩包,这里使用官网下载. 进入: http://www.oracle.com/techn ...
- linux 安装java环境
1.检查是否安装或者linux系统自带jdK 命令:java -version 查找JDK相关包是否被安装: rpm -qa |grep jdk rpm -qa |grep gcj 删除JDK相关包: ...
随机推荐
- 算法-leetcode-65-Valid Number
算法-leetcode-65-Valid Number 上代码: # coding:utf-8 __author__ = "sn" """Valida ...
- 吴裕雄 Bootstrap 前端框架开发——Bootstrap 排版:段落中超出屏幕部分不换行
<!DOCTYPE html> <html> <head> <title>菜鸟教程(runoob.com)</title> <meta ...
- 最简单、最常用的一些Git命令
---------------------------------------------------------------------------------------------------- ...
- Go的WaitGroup
goroutine使用方便,但是如果不加以处理一般会deadlock,因为goroutine配合Chanel的话只能是一进一出,否则就会卡在那里.下面一个示例就是利用这个WaitGroup处理这种死锁 ...
- 使用restTemplate发送post请求,传入参数是在requestBody请求体中,以json形式传输
@PostMapping public ResponseResult add(User user){ HttpHeaders httpHeaders = new HttpHeaders(); Medi ...
- iOS Common Design Patterns:常用设计模式
原文:http://www.jianshu.com/p/bf431fff235e 我们经常在编程中使用各种设计模式,在iOS中比较常见的设计模式有:单例模式.委托模式.观察者模式,当然实际上在Coco ...
- MongoDB基础篇2:数据库/用户/数据集合的增删改
一.数据库操作 创建并进入数据库: 命令:use DATABASE_NAME 示例:use tms 查看所有数据库: 命令:show dbs 注意: (1)新创建的数据库在show dbs命令 ...
- Java日期时间API系列11-----Jdk8中java.time包中的新的日期时间API类,使用java8日期时间API重写农历LunarDate
通过Java日期时间API系列7-----Jdk8中java.time包中的新的日期时间API类的优点,java8具有很多优点,现在网上查到的农历转换工具类都是基于jdk7及以前的类写的,下面使用ja ...
- html弹出框播放视频
<a data-toggle="modal" data-target=".bs-example-modal-lg">模态框</a> &l ...
- Navicat相关注册码
用户名和组织随便起. 注册码如下 --Navicat for SQL Server V10.0.10 NAVD-3CG2-6KRN-IEPM NAVL-NIGY-6MYY-XWQE NAVI-C3UU ...