未安装Wine的Mono软件包。

酒说Mono软件包未安装,但我已通过终端安装了它:
sudo apt-get install mono-complete

我应该怎么办?

2Wine需要使用Mono的Windows版本,我认为您可以使用winetricks来安装。关于具体细节,我有点模糊了,也许其他人可以参考这个提示并提供逐步指南。 - Nick Weinberg
是的,我需要一个逐步解答,不过还是谢谢你。 - Steve
4试着查看官方文档... https://wiki.winehq.org/Mono - GrannySez
5个回答

按照以下步骤安装wine-mono
  1. 从官方WineHQ网站下载wine-mono.msi
  2. 输入wine64 uninstaller
  3. 从卸载程序的图形界面中选择安装,并选择已下载的.msi安装包。
  4. 完成!

83从卸载程序中安装,多么直观。 - Alejandro Ramallo
使用$USER的话,会得到“没有配置用于打开此类型文件的Windows程序”的提示。从$ROOT来看,它是能够看到Mono运行时环境的(我重新加载了一下,因为之前没有看到回应)。即使使用sudo命令,wine KeePass.exe仍然无法正常工作。尝试了其他解决方法之后,还是出现了“未安装Wine Mono”的错误提示。 - alchemy
@AlejandroRamallo 在Windows界面下表现得非常出色 ;) - Matthieu
1我收到了一个错误信息:“没有配置打开此类型文件的Windows程序”。 - LuisAFK
1很好的回答,在像CI这样的无头机器上,这个方法不起作用。然而,使用wine msiexec /i wine-mono-X.Y.Z-x86.msi可以解决问题。请参阅下面的我的回答获取更多详细信息。 - sebkur

安装.NET也可以起作用。 例如在终端中执行以下命令:

sudo apt-get install winetricks
winetricks dotnet45

1我不认为它起作用了;在上述操作之后,wine卸载程序中没有显示任何内容。 - stucash
我也没用。我也没有尝试重新启动。 - alchemy
1我不想安装Wine Mono,因为这里的Wine教程keepass2_wine无法正常工作,出现错误: (base) leder@home-ryzen-desktop:~/Keepass2_portable$ wine KeePass.exe 0009:err:mscoree:CLRRuntimeInfo_GetRuntimeHost 未安装Wine Mono。 - Leder
这对我来说很合适,谢谢。 - Yan King Yin

`Executing load_dotnet45

warning: This package (dotnet45) is broken in wine-6.0.3. Broken since 5.18. See https://bugs.winehq.org/show_bug.cgi?id=49897 for more info. Use --force to try anyway. ------------------------------------------------------`
- undefined
不建议安装.NET包。相反,真的应该尝试安装Wine Mono。 - undefined

其他答案对我在18.04 LTS上使用winehq-stable软件包时无效。
我找到的解决办法是重新创建wine32和wine64前缀,并在其中安装wine-mono,使用自动提示完成安装。

    # Create dir for 32 bit prefix
    mkdir ~/.wine32
    # destroy default configuration (64 bit prefix)
    rm -rf ~/.wine 

    # Initial setup (create prefixes)
    WINEPREFIX="$HOME/.wine32" WINEARCH=win32 wine wineboot
    WINEPREFIX="$HOME/.wine" WINEARCH=win64 wine64 wineboot

    # To install dotnet35 on 32-bit prefix
    WINEPREFIX="$HOME/.wine32" WINEARCH=win32 winetricks dotnet35


@PSN的答案对我有用,但是我处于需要在没有用户界面的远程CI机器上从脚本中执行此操作的情况下。

我建议以下解决方案,这对我起作用:

  1. 从官方WineHQ网站下载wine-mono.msi(在撰写本文时为7.4.0版本)。
  2. 输入wine msiexec /i wine-mono-7.4.0-x86.msi
  3. 完成!

还可以通过命令行验证安装Mono是否成功:

$ wine uninstaller --list
{47A1FA26-B71E-5325-8161-20CF885181FF}|||Wine Mono Runtime
{7426CCE2-5341-534D-BAB0-1DAEDCCE76CE}|||Wine Mono Windows Support

附注:还可以使用wine start wine-mono-7.4.0-x86.msi来运行安装程序。虽然在本地机器上没有图形化的安装程序出现,但在无头机器上不会像这样工作。幸运的是,wine msiexec /i wine-mono-7.4.0-x86.msi似乎可以在没有显示器的情况下正常工作。

你可以很容易地通过Synaptic软件包管理器下载和配置:
  • 打开Synaptic并搜索msitools
  • 选择安装并点击应用

2不行,我安装了apt search mistools && sudo apt install !$,但是还是无法运行KeePass。 - alchemy