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++

相关推荐
广州灵眸科技有限公司14 分钟前
为RK3588注入澎湃算力:RK1820 AI加速卡完整适配与评测指南
linux·网络·人工智能·物联网·算法
daad77719 分钟前
wifi_note
运维·服务器·数据库
IT界的老黄牛21 分钟前
Linux 压缩命令实战:tar、gzip、bzip2、xz、zstd 怎么选?一篇讲清楚
linux·运维·服务器
IT WorryFree39 分钟前
飞塔防火墙与第三方设备进行IPSEC故障诊断期间,用户可能会观察到以下错误:
linux·服务器·网络
12345,catch a tiger1 小时前
虚拟机ubuntu安装Vmware Tools
linux·运维·ubuntu
凉、介1 小时前
别再把 PCIe 的 inbound/outbound、iATU 和 eDMA 混为一谈
linux·笔记·学习·嵌入式·pcie
辰风沐阳1 小时前
OpenClaw 安装教程(Ubuntu 24.04 Desktop)
linux·ubuntu
嘿嘿嘿x32 小时前
Linux记录过程
linux·开发语言
程序猿编码3 小时前
一个授予普通进程ROOT权限的Linux内核级后门:原理与实现深度解析
linux·运维·服务器·内核·root权限
小夏子_riotous3 小时前
openstack的使用——9. 密钥管理服务Barbican
linux·运维·服务器·系统架构·centos·云计算·openstack