我正在尝试运行一个名为枢纽之下通过葡萄酒。游戏说我需要 .NET Desktop Runtime 5,所以我下载了Windows安装程序并安装了它。然而,当运行实际游戏时,我收到以下错误消息:
消息:发生致命错误,在 [Z:\usr\share\dotnet\host\fxr\5.0.7] 中找不到所需的库 hostfxr.dll
当我find . | grep hostfxr
在我的.wine
前缀中运行时,它在几个地方找到了正确的 DLL:
./drive_c/Program Files/dotnet/host/fxr/5.0.7/hostfxr.dll
./drive_c/Program Files (x86)/dotnet/host/fxr/5.0.7/hostfxr.dll
如何让游戏找到这些 DLL 而不是在我的 DLL 中查找/usr/share
?
答案1
我可以通过将 DLL 复制到 .exe 的位置来使安装程序正常工作。不知道为什么我必须这样做,但它有效:
cd ./path/to/game
cp ~/.wine/drive_c/Program\ Files/dotnet/host/fxr/5.0.7/hostfxr.dll .
答案2
是的,这是一篇较旧的帖子,但 6 小时后我发现了一个实际上简单得令人恼火的解决方案。
当您通过终端运行 Wine 时,您需要做的就是添加“DOTNET_ROOT=”并将 Windows 路径放置到安装 dotnet 的位置。(默认情况下为:C:\Program Files\dotnet)
完整命令应如下所示:
WINEPREFIX=/PATH/TO/PREFIX DOTNET_ROOT="C:\Program Files\dotnet" wine foo.exe
希望这对某人有帮助!