Mic*_*hel 13 ubuntu apt dependencies clang
我将我的 Linux 机器从 Ubuntu 18.04 升级到 20.04。
我需要安装 clang 编译器套件,apt
命令给了我错误。我已经搜索了许多可能的解决方案,但到目前为止,我发现的解决类似问题的建议都没有帮助。这是我尝试时得到的apt install clang
:
? ~ sudo apt-get install -f clang
读取软件包列表...完成 构建依赖树
读取状态信息...完成 无法安装某些软件包。这可能意味着您请求了一个不可能的情况,或者如果您使用的是不稳定的发行版,一些必需的包尚未创建或已从 Incoming 中移出。以下信息可能有助于解决这种情况:
以下软件包具有未满足的依赖项: clang : Depends: clang-10 (>= 10~) 但它不会被安装 E: 无法纠正问题,您持有损坏的软件包。? ~
我做过各种apt-get update
和apt-get upgrade
。我还尝试一个接一个地列出每个包,但列表不断增长,并没有解决问题。
编辑:在@Martin Konrad 之后,我尝试了 aptitude:
? ~ sudo aptitude install clang
The following NEW packages will be installed:
clang clang-10{ab} lib32gcc-s1{ab} lib32gcc1{ab} lib32stdc++6{ab}
libc6-i386{a} libclang-common-10-dev{ab} libclang-cpp10{ab} libffi-dev{a}
libobjc-9-dev{ab} libobjc4{ab} libomp-10-dev{a} libomp5-10{a} libpfm4{a}
libz3-4{a} libz3-dev{a} llvm-10{a} llvm-10-dev{ab} llvm-10-runtime{a}
llvm-10-tools{a} python3-pygments{a}
0 packages upgraded, 21 newly installed, 0 to remove and 9 not upgraded.
Need to get 58.4 MB of archives. After unpacking 381 MB will be used.
The following packages have unmet dependencies:
lib32stdc++6 : Depends: gcc-10-base (= 10-20200411-0ubuntu1) but 10-20200416-0ubuntu1~18.04 is installed
libobjc4 : Depends: gcc-10-base (= 10-20200411-0ubuntu1) but 10-20200416-0ubuntu1~18.04 is installed
lib32gcc-s1 : Depends: gcc-10-base (= 10-20200411-0ubuntu1) but 10-20200416-0ubuntu1~18.04 is installed
clang-10 : Depends: libclang1-10 (= 1:10.0.0-4ubuntu1) but 1:10.0.1~++20200519100828+f79cd71e145-1~exp1~20200519201452.38 is installed
lib32gcc1 : Depends: gcc-10-base (= 10-20200411-0ubuntu1) but 10-20200416-0ubuntu1~18.04 is installed
libclang-cpp10 : Depends: libllvm10 (= 1:10.0.0-4ubuntu1) but 1:10.0.1~++20200519100828+f79cd71e145-1~exp1~20200519201452.38 is installed
libobjc-9-dev : Depends: gcc-9-base (= 9.3.0-10ubuntu2) but 9.3.0-11ubuntu0~18.04.1 is installed
Depends: libgcc-9-dev (= 9.3.0-10ubuntu2) but 9.3.0-11ubuntu0~18.04.1 is installed
libclang-common-10-dev : Depends: libllvm10 (= 1:10.0.0-4ubuntu1) but 1:10.0.1~++20200519100828+f79cd71e145-1~exp1~20200519201452.38 is installed
llvm-10-dev : Depends: libllvm10 (= 1:10.0.0-4ubuntu1) but 1:10.0.1~++20200519100828+f79cd71e145-1~exp1~20200519201452.38 is installed
The following actions will resolve these dependencies:
Keep the following packages at their current version:
1) clang [Not Installed]
2) clang-10 [Not Installed]
3) lib32gcc-s1 [Not Installed]
4) lib32gcc1 [Not Installed]
5) lib32stdc++6 [Not Installed]
6) libclang-common-10-dev [Not Installed]
7) libclang-cpp10 [Not Installed]
8) libobjc-9-dev [Not Installed]
9) libobjc4 [Not Installed]
10) llvm-10-dev [Not Installed]
Leave the following dependencies unresolved:
11) llvm-10 recommends llvm-10-dev
Accept this solution? [Y/n/q/?] Y
No packages will be installed, upgraded, or removed.
0 packages upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
Need to get 0 B of archives. After unpacking 0 B will be used.
Run Code Online (Sandbox Code Playgroud)
其解决方法是无法有效安装。
小智 10
您实际上非常接近能力建议。如果您查看安装的内容,您会发现这些软件包的 Ubuntu 18 版本仍然存在。
当我这样做时sudo aptitude install clang
,我收到了与所示相同的消息,但随后输入了“n”。然后,Aptitude 提供了另一种解决方案,即“降级”到 gcc 9。允许它这样做,并让它返回到命令提示符。然后这样做sudo apt install clang
,你会得到 clang-10。
听起来你们由于某种原因遇到了冲突。根本原因可能是您在升级后启用了与 Ubuntu 20.04 不 100% 兼容的非 Ubuntu 软件包存储库?如果是这样,请考虑将它们从 中删除/etc/apt/sources.list.d/
并运行apt update
。
如果这没有帮助,我建议aptitude
以交互方式运行。它提出解决方案并允许您以半自动方式解决它们。您可能还想关注“保留”的包裹。升级它们通常会有所帮助。为此,请aptitude
以交互模式启动,然后按Shift+ U,然后按G两次。
归档时间: |
|
查看次数: |
31984 次 |
最近记录: |