无法解析 Amazon Linux 2 AMI 上的库符号 hostfxr_main_startupinfo

Failed to resolve library symbol hostfxr_main_startupinfo on Amazon Linux 2 AMI

我按照说明安装了 .NET Core 2.1.4:https://docs.microsoft.com/ru-ru/dotnet/core/linux-prerequisites?tabs=netcore2x#install-net-core-for-centos-71-64-bit--oracle-linux-71-64-bit

下一个 运行 dotnet --version 它显示:

Failed to resolve library symbol hostfxr_main_startupinfo, error: /usr/share/dotnet/host/fxr/2.0.5/libhostfxr.so: undefined symbol: hostfxr_main_startupinfo 2.1.4

为什么会这样?

问题是 yum install dotnet-sdk-2.0.0 引入了 dotnet-runtime-deps-2.1.0-preview2-26406-04(预览版而不是发布版)。

要修复它,您需要将行 exclude=*preview* 添加到 dotnetdev.repo 文件中。 或者仅 运行 在指令的第二步执行以下命令:

sudo sh -c 'echo -e "[packages-microsoft-com-prod]\nname=packages-microsoft-com-prod \nbaseurl=https://packages.microsoft.com/yumrepos/microsoft-rhel7.3-prod\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/microsoft.asc\nexclude=*preview*" > /etc/yum.repos.d/dotnetdev.repo'

来源:https://github.com/dotnet/core-setup/issues/4007#issuecomment-380685340