ubuntu20.04安装gcc5.4 g++5.4

在进行ubuntu20.04的系统中安装gcc g++5.4中,会出现安装问题

1、pip安装,失败

2、使用apt-get install 进行安装时,提示没有候选项;

原因:ubuntu20.04的系统下,系统默认安装的gcc9.0的版本,默认的系统源是没有5.x的版本,安装过程如下:

1、安装依赖

cpp 复制代码
sudo apt install ncurses-dev
sudo apt install bison
sudo apt install flex
sudo apt install build-essential

2、增加源

cpp 复制代码
sudo vim /ect/apt/source.list

在末尾增加

cpp 复制代码
deb http://mirrors.aliyun.com/ubuntu/ xenial main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial main
 
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates main
 
deb http://mirrors.aliyun.com/ubuntu/ xenial universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial universe
deb http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-updates universe
 
deb http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security main
deb http://mirrors.aliyun.com/ubuntu/ xenial-security universe
deb-src http://mirrors.aliyun.com/ubuntu/ xenial-security universe

更新源 sudo apt-get update

4、搜索对应的版本进行安装

cpp 复制代码
apt-cache policy gcc-5
sudo apt-get install gcc-5=5.4.0-6ubuntu1~16.04.12
sudo apt-get install g++-5=5.4.0-6ubuntu1~16.04.12

在进行安装时,会出现问题,如下

解决办法,强制安装对应的版本

cpp 复制代码
sudo apt-get install gcc-5-base=5.4.0-6ubuntu1~16.04.12
sudo apt-get install cpp-5=5.4.0-6ubuntu1~16.04.12
sudo apt-get install libgcc-5-dev=5.4.0-6ubuntu1~16.04.12

g++的安装方法一样,只需要将gcc替换成g++即可。

5、输出gcc版本并进行版本控制

使用命令ls -l /usr/bin/gcc*可以查看已安装的gcc版本:

使用命令ls -l /usr/bin/g++*可以查看已安装的g++版本:

设置优先级

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 30

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-5 30

再次输出gcc版本,应该就可以了;

也可以使用config文件进行多版本的转化设置

复制代码
sudo update-alternatives --config gcc

根据提示,选择gcc-5对应的编号1 回车即可

最后gcc -v查看默认gcc版本,应当已经切换为gcc5

如果要对g++的多版本进行管理,只需将上面命令行中的gcc替换为g++

相关推荐
疯狂敲代码的老刘6 小时前
JDK 1.6到25 全版本网盘合集 (Windows + Mac + Linux)
java·linux·windows·macos·jdk
爆米花byh6 小时前
在RockyLinux9环境的Storm2.8.3单机版安装
linux·中间件·storm
纤纡.6 小时前
Linux 下 MySQL 数据类型与约束:第三章核心表格归纳与实战应用
linux·mysql
陈桴浮海6 小时前
【Linux&Ansible】学习笔记合集三
linux·运维·云原生·ansible
小Pawn爷6 小时前
1.Docker基础
运维·docker·容器
chinesegf6 小时前
清理docker残留镜像images
运维·docker·容器
江湖有缘6 小时前
基于华为openEuler系统部署Gitblit服务器
运维·服务器·华为
yuanmenghao6 小时前
Linux 性能实战 | 第 10 篇 CPU 缓存与内存访问延迟
linux·服务器·缓存·性能优化·自动驾驶·unix
EnglishJun7 小时前
Linux系统编程(二)---学习Linux系统函数
linux·运维·学习
小Pawn爷7 小时前
2.Docker的存储
运维·docker·容器