You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在WSL Ubuntu 20.04中并行安装.NET Core 2.1 SDK遇依赖冲突问题

在WSL Ubuntu 20.04中同时安装.NET 8和.NET Core 2.1 SDK的依赖冲突解决方案

问题场景

已在WSL Ubuntu 20.04环境中安装.NET 8,执行以下命令安装.NET Core 2.1 SDK时出现依赖错误:

执行的安装命令

  1. 启用Microsoft PPA
wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb 
sudo dpkg -i packages-microsoft-prod.deb
  1. 安装.NET Core 2.1 SDK
sudo apt update 
sudo apt install apt-transport-https 
sudo apt install dotnet-sdk-2.1 

错误信息(翻译后)

root@LP003060:/mnt/c/nitin/JavaCallCSharp_new# sudo apt install dotnet-sdk-2.1
正在读取软件包列表... 完成
正在构建依赖关系树... 完成
正在读取状态信息... 完成
无法安装某些软件包。这可能意味着您请求了一个不可能的情况,或者如果您使用的是不稳定发行版,某些所需的软件包尚未被创建或移出Incoming目录。
以下信息可能有助于解决问题:

下列软件包有未满足的依赖关系:
 dotnet-host-8.0 : 与 dotnet-host 冲突
 dotnet-runtime-deps-2.1 : 依赖: libssl1.0.0 但无法安装或
                                    libssl1.0.2 但无法安装或
                                    libssl1.1 但无法安装
                           依赖: liblttng-ust0 但无法安装
E: 错误,pkgProblemResolver::Resolve 生成了破坏,这可能是由于持有软件包造成的。

解决方案

1. 处理dotnet-host冲突

.NET 8的dotnet-host-8.0和.NET Core 2.1依赖的dotnet-host存在版本冲突,直接指定安装.NET Core 2.1对应的host包,让apt自动处理兼容:

sudo apt install dotnet-host-2.1 dotnet-sdk-2.1 -y

2. 补全缺失的依赖包

Ubuntu 20.04默认源不再提供libssl1.1和liblttng-ust0,手动下载旧版本deb包安装:

安装libssl1.1

wget http://security.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1f-1ubuntu2.23_amd64.deb
sudo dpkg -i libssl1.1_1.1.1f-1ubuntu2.23_amd64.deb

安装liblttng-ust0

wget http://archive.ubuntu.com/ubuntu/pool/main/l/lttng-ust/liblttng-ust0_2.11.0-1_amd64.deb
sudo dpkg -i liblttng-ust0_2.11.0-1_amd64.deb

3. 重新安装.NET Core 2.1 SDK

依赖补全后,再次执行安装命令:

sudo apt install dotnet-sdk-2.1 -y

4. 验证安装结果

检查已安装的.NET SDK版本,确认两个版本共存:

dotnet --list-sdks

内容的提问来源于stack exchange,提问作者Nitin S

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 15:02:44