![安装 .NET 6 SDK 会删除 Discord,如何保留两者以及为什么会发生这种情况?](https://linux22.com/image/1188788/%E5%AE%89%E8%A3%85%20.NET%206%20SDK%20%E4%BC%9A%E5%88%A0%E9%99%A4%20Discord%EF%BC%8C%E5%A6%82%E4%BD%95%E4%BF%9D%E7%95%99%E4%B8%A4%E8%80%85%E4%BB%A5%E5%8F%8A%E4%B8%BA%E4%BB%80%E4%B9%88%E4%BC%9A%E5%8F%91%E7%94%9F%E8%BF%99%E7%A7%8D%E6%83%85%E5%86%B5%EF%BC%9F.png)
其他人似乎遇到了与我完全相同的问题,但他们删除了他们的问题:https://askubuntu.com/questions/1424247/latest-dotnet6-sdk-installation-will-delete-discord-and-libc1,所以我在这里发表我自己的帖子。
我正在使用 Ubuntu 22.04.1 LTS,并使用他们在网站上提供的 deb 文件安装了 Discord。如果我尝试使用 安装 .NET 6 SDK sudo apt install dotnet-sdk-6.0
,我会得到以下结果:
正在读取软件包列表...完成 构建依赖关系树...完成 正在读取状态信息...完成 将会安装以下附加软件包: aspnetcore-运行时-6.0 aspnetcore-目标包-6.0 dotnet-apphost-pack-6.0 dotnet-host dotnet-hostfxr-6.0 dotnet-runtime-6.0 dotnet-targeting-pack-6.0 dotnet-templates-6.0 liblttng-ust-common1 liblttng-ust-ctl5 liblttng-ust1 libunwind-13 netstandard-targeting-pack-2.1 下列软件包将被删除: discord libc++1 libc++1-14 libc++abi1-14 libunwind-14 将会安装以下新软件包: aspnetcore-运行时-6.0 aspnetcore-目标包-6.0 dotnet-apphost-pack-6.0 dotnet-host dotnet-hostfxr-6.0 dotnet-runtime-6.0 dotnet-sdk-6.0 dotnet-targeting-pack-6.0 dotnet-templates-6.0 liblttng-ust-common1 liblttng-ust-ctl5 liblttng-ust1 libunwind-13 netstandard-targeting-pack-2.1 0 个升级,14 个新安装,5 个删除,0 个未升级。 需要获取 82.8 MB/124 MB 的档案。 此操作后,将使用264 MB的额外磁盘空间。 您想继续吗?[Y/n] n
为什么它要删除 Discord 和其他软件包,以及如何在安装 .NET 6 SDK 时保留 Discord?
答案1
Discord 目前依赖于 libunwind-14,而 dotnet6 依赖于 libunwind-13。
解决方案 1:
和折断您可以同时安装两者并避免版本冲突。
安装 Snap:
sudo apt install snapd
安装 dotnet 6 SDK:
sudo snap install dotnet-sdk --classic --channel=6.0
验证安装 dotnet SDK
dotnet --list-sdk
也许您需要设置一个别名:
sudo snap alias dotnet-sdk.dotnet dotnet
您可以在以下位置找到有关 dotnet with snap 的更多信息:Microsoft 文档。
解决方案 2:Microsoft 软件包
微软直接提供的软件包并不包含对libunwind的引用。