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

Ubuntu 16.10下升级.NET Core 1.0至2.0遇依赖问题求助

解决.NET Core 2.0升级时的libicu依赖冲突问题

嘿,我来帮你搞定这个.NET Core升级的依赖难题!你碰到的核心问题是Ubuntu系统的libicu版本和.NET Core早期版本不兼容——你的系统已经装了libicu57,但dotnet-runtime-2.0.5偏偏要求旧版的libicu55,直接安装旧版libicu又会和现有系统包冲突。下面给你几个靠谱的解决思路,按推荐优先级排序:

思路1:安装适配当前Ubuntu版本的.NET Core 2.0最新补丁版本

微软后续更新了.NET Core 2.0的运行时和SDK,修复了对高版本libicu的支持问题。你可以先清理残留包,再安装2.0分支的最后一个稳定版本:

  1. 清理之前的.NET Core相关残留包:
sudo apt-get remove --purge dotnet*
sudo apt-get autoremove
sudo apt-get clean
  1. 添加微软官方的Ubuntu软件源(根据你的Ubuntu版本选择对应命令):

    • 如果你用的是Ubuntu 17.10:
      wget -q https://packages.microsoft.com/config/ubuntu/17.10/packages-microsoft-prod.deb
      sudo dpkg -i packages-microsoft-prod.deb
      
    • 如果你用的是Ubuntu 18.04:
      wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
      sudo dpkg -i packages-microsoft-prod.deb
      
  2. 更新软件源并安装.NET Core 2.0的最新SDK:

sudo apt-get update
sudo apt-get install dotnet-sdk-2.0.9

dotnet-sdk-2.0.9是.NET Core 2.0分支的最后一个稳定版本,它已经完美适配了libicu57及更高版本的系统。

思路2:升级到.NET Core 2.1长期支持版本(更推荐)

如果你不需要严格停留在.NET Core 2.0,更推荐升级到.NET Core 2.1的LTS(长期支持)版本——它对新Ubuntu版本的兼容性更好,而且微软会提供更久的安全维护:

按照上面的步骤清理残留包后,直接安装2.1的最新SDK:

sudo apt-get update
sudo apt-get install dotnet-sdk-2.1

这个命令会自动安装2.1分支的最新稳定版本,完全解决了libicu的依赖冲突问题。

思路3:手动安装libicu55(不推荐,有系统风险)

如果因为特殊需求必须使用dotnet-runtime-2.0.5,你可以尝试从Ubuntu 16.04的源手动下载libicu55包,但这种方法可能会破坏系统其他软件的依赖关系,谨慎使用:

  1. 下载libicu55的deb包:
wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu55_55.1-7ubuntu0.4_amd64.deb
  1. 安装包并自动修复依赖:
sudo dpkg -i libicu55_55.1-7ubuntu0.4_amd64.deb
sudo apt-get -f install

完成后再尝试安装你需要的dotnet-sdk-2.1.4或dotnet-runtime-2.0.5即可。


内容的提问来源于stack exchange,提问作者Gabriel Castillo Prada

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 09:08:43