更新了一下windows
和wsl
的GCC
版本,GCC10
已经支持C++20
了,不过对于菜鸡如我
又有什么关系呢🤷️
windows
- 打开
CMD
或Powershell
- 更新包
mingw-get update
- 更新版本
mingw-get upgrade
运行完就更新到了GCC 9.2
了,但是最新的GCC 10
就别想了,mingw
还没移植,mingw-w64
呢? 好家伙,还在8.2
, 是谁当初鄙视mingw
更新慢呢? 那就转投WSL 大法
吧.
我这已经安装了
mingw
了,所以可以用这个,从零开始的朋友需要先安装这个,建议安装Mingw-64
,它和32
的区别大概类似于cf
和csgo
吧
WSL
更新了WSL
的系统版本后发现啥都没了,又要重新安装GCC
,不过Linux
用着是真香啊,还有原生的最新版本GNU
,
- 二话不说,更新一下系统包
sudo apt update
sudo apt upgrade
- 下载这个东西
build-essential
,包含GCC
,G++
,make
等一些工具啥的
sudo apt install build-essential
- 当然也可以在下载一个操作手册
manual page
sudo apt-get install manpages-dev
- 到这里就
Gcc
就安装完成了,当然版本不会太新,不过ubuntu 20.04
竟然带了个gcc-9
,也是挺意外的
gcc --version # 查看版本,到这里应该就已经安装好了,一般是gcc 7.5的版本
- 当然,偶尔还是要吃吃螃蟹,下载一个
gcc-10
尝尝鲜 gcc
更高版本不在默认仓库提供了,需要添加一个第三方PPA
仓库
sudo apt install software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
- 然后直接下载对应版本的
gCC
,不过似乎只有大版本?
sudo apt install gcc-10 g++-10 #可以任意更改版本啥的
- 这个时候,机器里就有两个版本的
gcc
了gcc 9
gcc 10
- 两个版本的
gcc
需要指定下优先级,肯定直接用最新版,留个稳定版备用
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 90 --slave /usr/bin/g++ g++ /usr/bin/g++-1
0 --slave /usr/bin/gcov gcov /usr/bin/gcov-10 # 指定gcc10 优先级为90
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 80 --slave /usr/bin/g++ g++ /usr/bin/g++-9
--slave /usr/bin/gcov gcov /usr/bin/gcov-9 ## gcc9 为80
10 . 可以查看安装的gcc
版本和优先级,也可以在这再次更改
There are 2 choices for the alternative gcc (providing /usr/bin/gcc).
Selection Path Priority Status
------------------------------------------------------------
* 0 /usr/bin/gcc-10 90 auto mode
1 /usr/bin/gcc-10 90 manual mode
2 /usr/bin/gcc-9 80 manual mode
- 查看一下
GCC
版本,发现已经变成10了
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 10.0.1 20200416 (experimental) [master revision 3c3f12e2a76:dcee354ce56:44b326839d864fc10c459916abcc97f35a9ac3de] (Ubuntu 10-20200416-0ubuntu1)