Ubuntu18.04/20.04/22.04上gcc-5/gcc-7安装及切换

ubuntu 18

ubuntu安装gcc5.4版本,亲测有效!
Ubuntu18.04 gcc,g++ (4.8,5,7.4 )安装及切换
一般操作如下(详细操作见上面的两篇博客):

# 1.see your version
gcc --version 
# 2.
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
# 3. 查看你可以安装的gcc5版本
apt-cache policy gcc-5
# 4.根据上面的版本,选择需要的进行安装
sudo apt-get install gcc-5=5.4.0-6ubuntu1~16.04.12
gcc --version 
g++ --version
# 如果gcc和g++版本不一致,则需要执行下面的:
# sudo apt install gcc-5 g++-5
#如果有多个版本的gcc, 版本切换
# Set the path for all gcc/g++ versions by modifying gcc-XX, g++-XX
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 80 --slave /usr/bin/g++ g++ /usr/bin/g++-5 --slave /usr/bin/gcov gcov /usr/bin/gcov-5 # set gcc和g++
# gcc-9 version
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60
# Configure gcc to use gcc-5,下面的命令运行后,会提示让你选择当前需要是选用的版本,输入Selection的id:
sudo update-alternatives --config gcc
# Verify gcc version
gcc --version
g++ --version

注意: 如果你发现gcc --version版本对了,但是g++ --version版本不对,则可能是

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 80 --slave /usr/bin/g++ g++ /usr/bin/g++-5 --slave /usr/bin/gcov gcov /usr/bin/gcov-5

这一步中忘记设置g++的链接了。

ubuntu 22.04

参考自:https://www.cnblogs.com/ywb123/p/16660711.html
ubuntu 22.04 安装gcc-7g++-7
1、安装gcc-7
1.1 添加镜像

(base) root@FIB:~ sudo vim /etc/apt/sources.list
# 在第一行添加:
deb [arch=amd64] http://archive.ubuntu.com/ubuntu focal main universe

1.2 更新镜像

(base) root@FIB:~ sudo apt-get update

1.3 指定版本安装

(base) root@FIB:~ sudo apt-get -y install gcc-7 g++-7
(base) root@FIB:~ gcc-7 --version
(base) root@FIB:~ g++-7 --version
(base) root@FIB:~ gcc --version
(base) root@FIB:~ g++ --version

2.配置gcc、g++版本的优先级:

update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 50
update-alternatives  --install /usr/bin/g++ g++ /usr/bin/g++-7 50
gcc --version
g++ --version
# 如果需要修改其它版本:update-alternatives  --install /usr/bin/g++ g++ /usr/bin/g++-10 30

切换需要的gcc版本,默认是0选项。输入需要的gcc版本序号后,即可成功切换(g++同理)

(base) root@FIB:~/cu110# update-alternatives --config gcc3 个候选项可用于替换 gcc (提供 /usr/bin/gcc)。

  选择       路径           优先级  状态
------------------------------------------------------------
* 0            /usr/bin/gcc-7    50        自动模式
  1            /usr/bin/gcc-10   30        手动模式
  2            /usr/bin/gcc-11   20        手动模式
  3            /usr/bin/gcc-7    50        手动模式

要维持当前值[*]请按<回车键>,或者键入选择的编号:

查看发现已经切换了(g++同理)

(base) root@FIB:~/cu110# update-alternatives --query gcc
Name: gcc
Link: /usr/bin/gcc
Status: manual
Best: /usr/bin/gcc-7
Value: /usr/bin/gcc-7

Alternative: /usr/bin/gcc-10
Priority: 30

Alternative: /usr/bin/gcc-11
Priority: 20

Alternative: /usr/bin/gcc-7
Priority: 50

ubuntu20.04安装gcc-7

  1. 查看可以安装的版本:
#查看你可以安装的gcc7版本
apt-cache policy gcc-7

如果发现ubuntu20.04有这个版本,则直接跳到第3步,否则就是发现ubuntu20.04没有这个版本的,所以如果要安装gcc-7则需要ubuntu18.04的源。如果是需要安装gcc-5,则只需要ubuntu16.06的源就行了。其它的类似,源可以自行搜索!

  1. 编辑/etc/apt/sources.list文件, 在文件最前面添加阿里云镜像源(ubuntu18.04):
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

运行:

sudo apt-get update

可能会如下有报错:

Err:5 http://mirrors.aliyun.com/ubuntu bionic InRelease                                                        
  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 3B4FE6ACC0B21F32
Err:6 http://mirrors.aliyun.com/ubuntu bionic-security InRelease                                                
  The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 3B4FE6ACC0B21F32
Get:9 http://mirrors.aliyun.com/ubuntu bionic-backports InRelease [74.6 kB]                                     
Get:10 http://mirrors.aliyun.com/ubuntu xenial-updates/main amd64 DEP-11 Metadata [326 kB]

3B4FE6ACC0B21F32是从报错信息中获取的:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B4FE6ACC0B21F32

再次运行:

sudo apt-get update
  1. 查看可以安装的版本:
#查看你可以安装的gcc7版本
apt-cache policy gcc-7
~/software/gcc-7$ apt-cache policy gcc-7
gcc-7:
  Installed: (none)
  Candidate: 7.5.0-3ubuntu1~18.04
  Version table:
     7.5.0-3ubuntu1~18.04 500
        500 http://mirrors.aliyun.com/ubuntu bionic-security/main amd64 Packages
        500 http://mirrors.aliyun.com/ubuntu bionic-updates/main amd64 Packages
     7.3.0-16ubuntu3 500
        500 http://mirrors.aliyun.com/ubuntu bionic/main amd64 Packages
  1. 安装, 注意要保证gcc和g++版本一致:
# 根据上面的版本,选择需要的进行安装
sudo apt-get install gcc-7=7.5.0-3ubuntu1~18.04
gcc --version 
g++ --version
# 如果gcc和g++版本不一致,则需要执行下面的:
sudo apt install gcc-7 g++-7
#如果有多个版本的gcc, 版本切换
# Set the path for all gcc/g++ versions by modifying gcc-XX, g++-XX
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 80 --slave /usr/bin/g++ g++ /usr/bin/g++-7 --slave /usr/bin/gcov gcov /usr/bin/gcov-7 # set gcc和g++
# gcc-9 version
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 60
# Configure gcc to use gcc-7,下面的命令运行后,会提示让你选择当前需要是选用的版本,输入Selection的id:
sudo update-alternatives --config gcc
# Verify gcc version
gcc --version
g++ --version

参考:

  1. Ubuntu20.04如何安装低版本GCC5.4
  2. 解决sudo apt-get update遇到问题:GPG error:The following signatures couldn‘t be verified because the public
  3. Ubuntu20.04安装gcc-5

你可能感兴趣的:(Linux,软件安装与使用,linux,ubuntu,服务器)