我刚刚切换到靶心(请参阅下面的来源)
deb http://deb.debian.org/debian/ testing main contrib non-free
deb-src http://deb.debian.org/debian/ testing main contrib non-free
deb http://deb.debian.org/debian/ testing-updates main contrib non-free
deb-src http://deb.debian.org/debian/ testing-updates main contrib non-free
deb http://deb.debian.org/debian-security testing-security main
deb-src http://deb.debian.org/debian-security testing-security main
deb http://security.debian.org testing-security main contrib non-free
deb-src http://security.debian.org testing-security main contrib non-free
更新和升级顺利,但由于以下错误消息,完整升级失败:
The following packages have unmet dependencies:
libc6-dev : Breaks: libgcc-8-dev (< 8.4.0-2~) but 8.3.0-6 is to be installed
E: Error, pkgProblemResolver::Resolve generated breaks, this may be caused by held packages.
从我在packages.debian.org上看到的情况来看,Debian测试应该有libgcc-8-dev: 8.4.0-4
,所以我不明白为什么要安装旧版本。
我该如何解决这个问题,以完成靶心全面升级?
答案1
安装gcc-8-base
(sudo apt install gcc-8-base
)似乎对我有用并解决了我的问题。
答案2
如果仍然不起作用,请尝试:
apt-get install gcc-9-base
答案3
在尝试了其他所有方法后,这对我有用:
apt-get 删除 libgcc-8-dev
答案4
@Laogeodrit 在一条评论中提到了这一点,但我决定发布一个答案,因为它更容易找到。唯一对我有用的程序:
echo "deb http://download.opensuse.org/repositories/home:/rpavlik:/bullseye-fix/Debian_Testing/ ./" | sudo tee /etc/apt/sources.list.d/bullseye-upgrade-fix.list
curl http://download.opensuse.org/repositories/home:/rpavlik:/bullseye-fix/Debian_Testing/Release.key | sudo tee /etc/apt/trusted.gpg.d/bullseye-upgrade-fix.asc
sudo apt update
这会添加具有可用的名为 libgcc1 等的过渡包的存储库,这些包取决于它们在 bullseye 中重命名的等效项。之后您可以运行dist-upgrade
或full-upgrade
.
重新启动后不要忘记删除存储库:
sudo rm /etc/apt/sources.list.d/bullseye-upgrade-fix.list
sudo rm /etc/apt/trusted.gpg.d/bullseye-upgrade-fix.asc`