小白近日安装完Ubuntu 22.04LTS后,记不清是不是用了Software Updater还是自己手动upgrade了包,导致在配置编译工具build-essential(输入sudo apt install build-essential)时出现如下报错:

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:The following packages have unmet dependencies:libc6-dev : Depends: libc6 (= 2.35-0ubuntu3) but 2.35-0ubuntu3.1 is to be installed
E: Unable to correct problems, you have held broken packages.

分析报错信息,得知包libc6的版本过高。网上查到的很多关于依赖问题的解决方法是换源,但是换源很可能不能解决问题,比如我尝试了从ustc到aliyun。那么考虑降级操作。考虑到libc6可能有小白不明确的复杂依赖关系,小白就不敢直接sudo apt install libc6=2.35-0ubuntu3 ,这里就借用 Ubuntu解决依赖关系问题的正确姿势一文中提到的包管理工具aptitude来帮助处理依赖关系

  1. 安装aptitude
sudo apt install aptitude
  1. 利用aptitude来安装build-essential
sudo aptitude install build-essential

运行命令后

The following NEW packages will be installed:binutils{a} binutils-common{a} binutils-x86-64-linux-gnu{a} build-essential{b} dpkg-dev{a} fakeroot{a} gcc{a} gcc-11{a} libalgorithm-diff-perl{a} libalgorithm-diff-xs-perl{a} libalgorithm-merge-perl{a} libasan6{a} libbinutils{a} libcc1-0{a} libctf-nobfd0{a} libctf0{a} libfakeroot{a} libgcc-11-dev{a} libitm1{a} liblsan0{a} libquadmath0{a} libtsan0{a} libubsan1{a} lto-disabled-list{a} make{a}
The following packages will be REMOVED:systemd-hwe-hwdb{u}
0 packages upgraded, 25 newly installed, 1 to remove and 0 not upgraded.
Need to get 34.1 MB of archives. After unpacking 108 MB will be used.
The following packages have unmet dependencies:build-essential : Depends: libc6-dev but it is not installable orlibc-dev which is a virtual package, provided by:- libc6-dev (2.35-0ubuntu3), but it is not installableDepends: g++ (>= 4:10.2) but it is not installable
The following actions will resolve these dependencies:Keep the following packages at their current version:
1)     build-essential [Not Installed]                    Leave the following dependencies unresolved:
2)     dpkg-dev recommends build-essential                Accept this solution? [Y/n/q/?]

显然此时方案并不是我们想要的,输入n来获得其方案。

The following actions will resolve these dependencies:Install the following packages:
1)      g++ [4:11.2.0-1ubuntu1 (jammy)]
2)      g++-11 [11.3.0-1ubuntu1~22.04 (jammy-security)]
3)      gcc-12-base:i386 [12.1.0-2ubuntu1~22.04 (jammy-security)]
4)      krb5-locales [1.19.2-2 (jammy)]
5)      libbrotli1:i386 [1.0.9-2build6 (jammy)]
6)      libbsd0:i386 [0.11.5-1 (jammy)]
7)      libc-dev-bin [2.35-0ubuntu3 (jammy)]
8)      libc-devtools:i386 [2.35-0ubuntu3 (jammy)]
9)      libc6:i386 [2.35-0ubuntu3 (jammy)]
10)     libc6-dev [2.35-0ubuntu3 (jammy)]
11)     libcom-err2:i386 [1.46.5-2ubuntu1.1 (jammy-security)]
12)     libcrypt-dev [1:4.4.27-1 (jammy)]
13)     libcrypt1:i386 [1:4.4.27-1 (jammy)]
14)     libdeflate0:i386 [1.10-2 (jammy)]
15)     libexpat1:i386 [2.4.7-1ubuntu0.2 (jammy-security)]
16)     libfontconfig1:i386 [2.13.1-4.2ubuntu5 (jammy)]
17)     libfreetype6:i386 [2.11.1+dfsg-1build1 (jammy)]
18)     libgcc-s1:i386 [12.1.0-2ubuntu1~22.04 (jammy-security)]
19)     libgd3:i386 [2.3.0-2ubuntu2 (jammy)]
20)     libgssapi-krb5-2:i386 [1.19.2-2 (jammy)]
21)     libidn2-0:i386 [2.3.2-2build1 (jammy)]
22)     libjbig0:i386 [2.1-3.1ubuntu0.22.04.1 (jammy-security)]
23)     libjpeg-turbo8:i386 [2.1.2-0ubuntu1 (jammy)]
24)     libjpeg8:i386 [8c-2ubuntu10 (jammy)]
25)     libk5crypto3:i386 [1.19.2-2 (jammy)]
26)     libkeyutils1:i386 [1.6.1-2ubuntu3 (jammy)]
27)     libkrb5-3:i386 [1.19.2-2 (jammy)]
28)     libkrb5support0:i386 [1.19.2-2 (jammy)]
29)     liblzma5:i386 [5.2.5-2ubuntu1 (jammy)]
30)     libmd0:i386 [1.0.4-1build1 (jammy)]
31)     libnsl-dev [1.3.0-2build2 (jammy)]
32)     libnsl2:i386 [1.3.0-2build2 (jammy)]
33)     libnss-nis:i386 [3.1-0ubuntu6 (jammy)]
34)     libnss-nisplus:i386 [1.3-0ubuntu6 (jammy)]
35)     libpng16-16:i386 [1.6.37-3build5 (jammy)]
36)     libssl3:i386 [3.0.2-0ubuntu1.7 (jammy-security)]
37)     libstdc++-11-dev [11.3.0-1ubuntu1~22.04 (jammy-security)]
38)     libtiff5:i386 [4.3.0-6ubuntu0.2 (jammy-security)]
39)     libtirpc-dev [1.3.2-2ubuntu0.1 (jammy-security)]
40)     libtirpc3:i386 [1.3.2-2ubuntu0.1 (jammy-security)]
41)     libunistring2:i386 [1.0-1 (jammy)]
42)     libuuid1:i386 [2.37.2-4ubuntu3 (jammy)]
43)     libwebp7:i386 [1.2.2-2 (jammy)]
44)     libx11-6:i386 [2:1.7.5-1 (jammy)]
45)     libxau6:i386 [1:1.0.9-1build5 (jammy)]
46)     libxcb1:i386 [1.14-3ubuntu3 (jammy)]
47)     libxdmcp6:i386 [1:1.1.3-0ubuntu5 (jammy)]
48)     libxpm4:i386 [1:3.5.12-1build2 (jammy)]
49)     libzstd1:i386 [1.4.8+dfsg-3build1 (jammy)]
50)     linux-libc-dev [5.15.0-53.59 (jammy-security)]
51)     manpages-dev [5.10-1ubuntu1 (jammy)]
52)     rpcsvc-proto [1.4.2-0ubuntu6 (jammy)]
53)     zlib1g:i386 [1:1.2.11.dfsg-2ubuntu9.2 (jammy-security)]                 Downgrade the following packages:
54)     libc6 [2.35-0ubuntu3.1 (now) -> 2.35-0ubuntu3 (jammy)]
55)     libc6-dbg [2.35-0ubuntu3.1 (now) -> 2.35-0ubuntu3 (jammy)]
56)     libfreetype6 [2.11.1+dfsg-1ubuntu0.1 (jammy-security, now) -> 2.11.1+dfsAccept this solution? [Y/n/q/?]

此时给出了降级方案,选择y来接受。

最后我们再次运行sudo apt install build-essential检查,包已经安装完成了。

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
build-essential is already the newest version (12.9ubuntu3).
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

小白,欢迎大佬们讨论指正。

Ubuntu 22.04LTS中使用aptitude来解决build-essential安装过程中过高版本包依赖问题相关推荐

  1. 解决Android Studio安装过程中“SDK tools directory is missing”的问题

    解决Android Studio安装过程中"SDK tools directory is missing"的问题 参考文章: (1)解决Android Studio安装过程中&qu ...

  2. xp打印机驱动安装不了_解决Windows XP安装过程中的“安装程序找不到任何硬盘驱动器”

    xp打印机驱动安装不了 One of the most popular topics among our readers is installing Windows XP on your new Wi ...

  3. Ubuntu自用配置(Ubuntu 22.04LTS + 拯救者R9000P 2021)

    由于喜欢没事自己随便折腾,就写了个也算小本本记录自己的所有问题 电脑配置: 联想拯救者2021H R9000P 显卡:NVIDIA GTX 3060 刻录ISO的小软件 Rufus Vectoy(强烈 ...

  4. ubuntu安装过程中遇到的一些问题及解决办法。

    ubuntu安装过程中遇到的一些问题及解决办法. 参考文章: (1)ubuntu安装过程中遇到的一些问题及解决办法. (2)https://www.cnblogs.com/wleaf/p/118724 ...

  5. 史上最详细的UEFI+GTP安装ubuntu18.04LTS全记录,涵盖安装过程中的各种问题,所有的问题都将在这里终结。

    首先,若还有朋友不知道UEFI,可以先百度了解一下.截止到现在2019年,90%的朋友所使用的电脑都支持UEFI,不支持UEFI的电脑应该已经退役的差不多了.所以当你百度了解UEFI之后,相信你会有想 ...

  6. Oracle 11g R2安装过程中遇到的报错及解决办法

    1.提示Check if the DISPLAYvariable is set.    Failed<<<< 解决方案: #xhost +  //切换到root用户输入 #su ...

  7. WSL(windows subsystem for linux)安装错误:安装过程中遇到错误,但可以继续安装。组件: ‘WSL 内核‘ 错误代码: 0x80072f78解决方法

    文章目录 问题来源 解决 参考 问题来源 使用管理员身份打开powershell,输入 wsl --install 之后等待安装: 结果,出现如下问题: PS C:\WINDOWS\system32& ...

  8. 如何解决 SQL Server 安装程序中的 COM+ 系统配置检查失败问题

    转载自:http://technet.microsoft.com/zh-cn/library/ms143690(SQL.90).aspx SQL Server 2005 联机丛书(2008 年 11 ...

  9. Ubuntu安装过程中出现“没有定义根文件系统”,Ubuntu安装过程中无法读取Windows分区

    最近在使用Wubi安装Ubuntu 12.04.2 LTS的过程中,在重启进入Ubuntu安装界面时,弹出"没有定义根文件系统"的通知,在网上查询解决方案良久未找到合适的解决方法. ...

最新文章

  1. 深入JVM彻底剖析前面ygc越来越慢的case
  2. 中国高炉煤气脉冲袋式除尘器市场需求分析与竞争战略规划研究报告2022-2028年版
  3. 设计模式之工厂模式(三)
  4. 40K刚面完Java岗,这些技术必须掌握
  5. C语言 最大公约数和最小公倍数计算
  6. python设计函数isleapyear_Python实战练习——打印日历教程
  7. 豆瓣鹅组等7个小组被停用 豆瓣4个月累计关停56个问题小组
  8. 31篇文章!计算机视觉从原理到OpenCv实战
  9. 动态规划解决分割问题
  10. java内存堆栈的区别
  11. javascript 异步队列
  12. 【Java基础知识 17】聊一聊同步代码块
  13. 微信小程序获取二维码报错:{“errcode“:47001,“errmsg“:“data format error hint:“}
  14. 使用C#更新word中的目录域
  15. mysql打开数据库命令_MySQL操作数据库指令
  16. 漏洞修复:web应用服务器版本信息泄露
  17. Word处理控件Aspose.Words功能演示:使用 C# 将 Word 文档转换为 Markdown
  18. Java系统线上生产问题排查一把梭
  19. 五环电阻和四环电阻的区别是什么
  20. java的静态与非静态 及其代码演示示例

热门文章

  1. BI家族又添新军 用户该如何选择??
  2. spring循环依赖问题排查
  3. Processing——A Music Game for the Avengers
  4. 智能机器人做CE认证按照什么标准
  5. squirrelmail 配置
  6. Python heap
  7. 以颤抖之身追赶 怀敬畏之心挑战
  8. asixs 响应慢_想开始慢跑锻炼,入手一双asics跑鞋怎么选?
  9. 破坏入侵计算机信息系统犯罪,计算机信息系统破坏罪与计算机非法入侵罪区别...
  10. vue初始化脚手架工程时npm报错