当前位置: 首页 > news >正文

[TIP] Ubuntu 22.04 配置多个版本的 GCC 环境

问题背景

在 Ubuntu 22.04 中安装 VMware 虚拟机时,提示缺少 VMMON 和 VMNET 模块

编译这两个模块需要 GCC 的版本大于 12.3.0,而 Ubuntu 22.04 自带的 GCC 版本为 11.4.0

因此需要安装对应的 GCC 版本,但为了不影响其他程序,需要同时保留这两个版本的 GCC

解决方法

① 使用命令 gcc -v 查看本机的 GCC 版本:

 可以看到当前系统的 GCC 版本为 11.4.0

② 使用以下命令安装 GCC 12 和 G++ 12:

sudo apt install gcc-12 g++-12

 命令执行结果如下:

通过命令 gcc-12 -v 检查是否安装成功:

③ 为每个版本的 GCC 设置优先级:

将 GCC 12 的优先级设置为 100:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-12 100 --slave /usr/bin/g++ g++ /usr/bin/g++-12 --slave /usr/bin/gcov gcov /usr/bin/gcov-12

将 GCC 11 的优先级设置为 80:

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

配置完成后,由于 GCC 12 的优先级高于 GCC 11 的优先级,因此系统会切换为 GCC 12:

④ 切换不同版本的 GCC:

sudo update-alternatives --config gcc

输入对应的编号即可切换对应版本的 GCC,例如,输入 1 即可切换为 GCC 11:

在版本选择界面直接按回车会选择默认版本的 GCC 12

相关文章:

  • 第7篇:中间件全链路监控与 SQL 性能分析实践
  • 如何理解 IP 数据报中的 TTL?
  • 高效Excel合并拆分软件
  • 论文阅读:HySCDG生成式数据处理流程
  • 《ERP原理与应用教程》第3版习题和答案
  • MySQL安装与配置详细讲解
  • LINUX 66 FTP 2 ;FTP被动模式;FTP客户服务系统
  • Nestjs框架: nestjs-schedule模块注册流程,源码解析与定时备份数据库
  • Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)
  • 飞云智能波段主图+多空短线决策副图指标,组合操盘技术图文解说
  • 预训练语言模型T5-11B的简要介绍
  • 【Dv3Admin】系统视图菜单字段管理API文件解析
  • 如何以 9 种方式将照片从手机传输到笔记本电脑
  • 智谱清言沉思智能体,天工智能体,agenticSeek等AI Agent测试记录
  • Linux缓冲区与glibc封装:入门指南
  • 2025年全国青少年信息素养大赛 scratch图形化编程挑战赛 小高组初赛 真题详细解析
  • 【更新至2024年】2000-2024年上市公司财务困境MertonDD模型数据(含原始数据+结果)
  • Shopify 主题开发:店铺品牌色在主题中的巧妙运用
  • Oracle 用户名大小写控制
  • 12.5Swing控件3Jpanel JOptionPane