GLIBC_2.33版本未找到

5

我正在使用特定于Manjaro 20.2.1的Linux上的.NET Core。我正在学习.NET Core,并且想使用EF命令,但在Linux上它的工作方式略有不同。我已经使用以下命令安装了dotnet-ef工具:

dotnet tool install --global dotnet-ef --version 5.0.3

当我尝试运行 dotnet ef 时,会抛出以下错误:

/home/$USERNAME/.dotnet/tools/dotnet-ef: /snap/core18/current/lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.33' not found (required by /usr/lib/libstdc++.so.6)

但是看起来我的发行版上安装的GLIBC版本是:2.33-3,而它似乎正在寻找特定的版本2.33。

我该如何解决这个问题呢?

1个回答

2

看起来 dotnet 中的某些内容依赖于 GLIBC 2.33,但 dotnet 与使用 GLIBC 2.27 的 core18 相关联。

λ snap list
Name                Version          Rev    Tracking       Publisher    Notes
core                16-2.48.2.1      10823  latest/stable  canonical✓   core
core18              20210128         1988   latest/stable  canonical✓   base
dotnet-sdk          5.0.103          112    latest/stable  dotnetcore✓  classic

λ file /snap/core18/current/lib/x86_64-linux-gnu/libc.so.6
/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6: symbolic link to libc-2.27.so

嗨,我刚刚运行了命令,但它没有起作用,抛出了这个日志:/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6:: 无法打开 `/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6:' (没有那个文件或目录)。 - g14wx
你是否忘记删除尾随的冒号?请尝试这个命令:file /snap/core18/current/lib/x86_64-linux-gnu/libc.so.6 - Danil Kondratiev
这是上一个命令的输出结果:/snap/core18/current/lib/x86_64-linux-gnu/libc.so.6:符号链接到libc-2.27.so。 - g14wx
1
哦,我的意思是这不是一个修复。我的理论是 dotnet 依赖于系统的 Glibc 2.32,为了解决它,你的系统必须有 glibc 2.32,但是 Manjaro 在稳定分支上带有 2.33-4。显然,dotnet 的目标是 Ubuntu 20.10,它具有 glibc 2.32(有趣的是,Ubuntu 20.04 具有 2.31,所以快照在其上无法工作?) - Danil Kondratiev
在基于core 20的快照上遇到了相同的错误。 - Guy Luz
显示剩余3条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接