尽管 jammy-security 提供了新版本,但 gcc-12 并未更新

尽管 jammy-security 提供了新版本,但 gcc-12 并未更新

我正在运行 Ubuntu 22.04,我正在尝试将 gcc-12 及其所有相关依赖项(当前版本 12.1.0-7)更新到 jammy-security 中可用的最新版本(12.1.0-2ubuntu1~22.04),但我的系统坚持要求gcc-12 已经是最新版本了。

据我了解,根据 apt_preferences 的手册页,它指出,

在典型情况下,已安装的软件包版本(优先级 100)不如sources.list(5) 文件中列出的源中可用的版本之一(优先级 500 或 990)新。然后,当执行 apt-get install some-package 或 apt-get upload 时,软件包将被升级。

然而,尽管 jammy-security 具有比当前版本更高的 pin 优先级,但安装的 gcc-12 拒绝升级。

我知道我可以通过指定版本和目标存储库来强制更新

sudo apt-get install gcc-12=12.1.0-2ubuntu1~22.04 -t jammy-security

但随后我必须对所有 gcc-12 的依赖项以及相应依赖项的依赖项执行此操作。有人知道无需单独升级每个软件包的修复方法吗?

这是我的几个终端输出:

须藤 apt-get 安装

sudo apt-get install gcc-12
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
gcc-12 is already the newest version (12.1.0-7).
0 upgraded, 0 newly installed, 0 to remove and 4 not upgraded.

apt-cache 策略 gcc-12

gcc-12:
  Installed: 12.1.0-7
  Candidate: 12.1.0-7
  Version table:
 *** 12.1.0-7 100
        100 /var/lib/dpkg/status
     12.1.0-2ubuntu1~22.04 500
        500 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages
        500 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages
     12-20220319-1ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages

/etc/apt/sources.list

deb http://archive.ubuntu.com/ubuntu jammy main universe restricted
deb http://security.ubuntu.com/ubuntu/ jammy-security main universe restricted
deb http://archive.ubuntu.com/ubuntu jammy-updates main universe restricted

答案1

据可以确定,您的gcc-12软件包确实比 提供的版本更新:12.1.0-7 是比 12.1.0-2ubuntu1~22.04 更高的版本。jammy-securityapt

要降级您的软件包,您需要将它们固定为大于 1000 的优先级。请参阅Debian 批量将软件包降级到当前可下载的版本一种可能的方法。

相关内容