Yan*_*hon 22 mono windows wine 14.04
我试图在 Wine 中运行一个简单的程序,在 Ubuntu 14.04 LTS 下,但是它抱怨说
fixme:mscoree:parse_supported_runtime sku=L".NETFramework,Version=v4.0" not implemented
fixme:mscoree:parse_probing privatePath=L"assemblies" not implemented
The entry point method could not be loaded
Run Code Online (Sandbox Code Playgroud)
尝试手动安装 .Net 4.0 会在安装程序中产生错误,说 .Net 4.0 已经安装。
跑步 winetricks forcemono
------------------------------------------------------
You are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a
clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Executing w_do_call forcemono
Executing load_forcemono
Using native override for following DLLs: mscoree
Executing winetricks_early_wine regedit C:\windows\Temp\_forcemono\override-dll.reg
Using override for following DLLs: mscorsvw.exe
Executing winetricks_early_wine regedit C:\windows\Temp\_forcemono\override-dll.reg
Run Code Online (Sandbox Code Playgroud)
然后尝试再次启动同一个应用程序仍然会失败
err:module:import_dll Library mscoree.dll (which is needed by L"Z:\\home\\<user>\\tmp\\saveedit_r237\\Gibbed.Borderlands2.SaveEdit.exe") not found
err:module:LdrInitializeThunk Main exe initialization for L"Z:\\home\\<user>\\tmp\\saveedit_r237\\Gibbed.Borderlands2.SaveEdit.exe" failed, status c0000135
Run Code Online (Sandbox Code Playgroud)
我尝试过 Wine 1.6 和 1.7.30,但都失败了。.Net 4.0 真的实现了吗?还是部分实施?有没有办法让这个 .Net 4.0 应用程序工作?
Winetricks 抱怨dotnet40无法在 64 位系统上安装。那么,我该如何安装呢?
Wil*_*ilf 31
首先,请注意这个非常明显的警告:
------------------------------------------------------
You are using a 64-bit WINEPREFIX. If you encounter problems, please retest in a
clean 32-bit WINEPREFIX before reporting a bug.
------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
这表明您需要创建一个 32 位的 Wineprefix,因为 Wine 与 32 位的东西一起工作得更好 - 这可以通过在运行其命令之前告诉 wine 要使用的架构简单地完成(我认为这也可以通过卸载 Wine x86_64 并安装来完成) Wine i386/i686 - 无论如何,在运行此命令后保持终端打开以接收其他 wine 命令):
export WINEARCH="win32"
Run Code Online (Sandbox Code Playgroud)
这会设置 wine 在启动之前读取的环境变量(请参阅 参考资料man wine)。
让它创建自己的 WINEPREFIX(存储 Wine 虚拟驱动器的位置)也是一个好主意。默认情况下,这是~/.wine,但您可以为每个架构和程序创建单独的 - 因此要在目录中创建一个 WINEPREFIX /home/USERNAME/.wine-PROGRAM-NAME/:
export WINEPREFIX=~/.wine-PROGRAM-NAME/
Run Code Online (Sandbox Code Playgroud)
该目录不必存在(理想情况下它不应该存在,因此不必覆盖内容),但父目录可能应该存在 - 您还应该拥有读取和写入它的权限,而我没有认为出于技术原因, wineprefix 可以位于 FAT/NTFS 驱动器上(它不起作用)。
因此,要为程序设置 32 位 wine 前缀:
export WINEARCH="win32"
export WINEPREFIX=~/.wine-PROGRAM-NAME/
wineboot -u
Run Code Online (Sandbox Code Playgroud)
您可以替换PROGRAM-NAME为程序的名称,以便以后更容易识别该程序。只需确保它只包含字母和数字,因为标点符号在各种命令外壳中通常具有特殊功能。
然后你应该得到一个这样的窗口:

然后你就可以出发了。现在您可以使用以下方法安装 NET 4.0 winetricks(您可能希望首先从此处获取最新版本):
winetricks dotnet40
Run Code Online (Sandbox Code Playgroud)
这应该在export WINEPREFIX=...命令之后的终端中,或者将它放在 wine 命令之前(对于应用程序启动器该命令行很有用):
env WINEPREFIX=~/.wine-PROGRAM-NAME/" winetricks dotnet40
Run Code Online (Sandbox Code Playgroud)
您可能还想使用它winetricks来安装它可能需要的其他一些东西 - 例如字体(使用选项corefonts, lucida, tahoma)。要列出 winetricks 的选项,请使用winetricks list-all.
然后,您可以使用wine "~/Downloads/PATH/TO/INSTALLER.exe". 再一次(复制该文件,然后选择“粘贴文件名”到终端,所以看起来'/home/wilf/Desktop/name spaces/installer.exe'不是file:///home/wilf/Desktop/name spaces/installer.exe')。
您应该确保在运行此命令之前(尤其是在关闭终端时)或在同一行中导出了 WINEPREFIX。在让它工作(或不工作)后,您可能想要报告它在这里的工作情况(包括您做了什么等,以便您可以帮助其他人)。如果您有问题,并且输出中出现明显错误,您可以报告错误。
安装后,它应该使应用程序的启动器出现在 Dash/Menu 上,有时也出现在桌面上。否则,将来要运行该应用程序,您可能需要再次使用export WINEPREFIX=...和wine ....(或env WINEPREFIX=... wine .....)运行该应用程序,除非您创建了一个启动器(如果您需要知道如何操作,请在下方或某处评论....)
您可以使用此命令从 Ubuntu 存储库中获取版本(或从软件中心安装 Winetricks):
sudo apt-get install winetricks
Run Code Online (Sandbox Code Playgroud)
然后你可以winetricks OPTIONS用来做东西。
对于最新版本,您可以使用以下命令下载并使用最新版本:
wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
Run Code Online (Sandbox Code Playgroud)
请注意./winetricks <OPTIONS>,除非它的目录在 shell 的$PATH.
您想要使用的应用程序可能可以在PlayOnLinux下运行(如果您可以在此处找到它应该是) - 这几乎是所有 GUI 并自动为您完成大部分步骤。
否则,您可以使用终端来做到这一点很容易(你通常比如果一个GUI程序做更多的控制),只是要小心你投入(尤其是如果它包含的命令sudo,rm等)。首先尝试了解每个命令发生了什么。
此外,其中的一些步骤可以以其他方式完成-既winecfg和winetricks开放的图形用户界面,通过它你可以做一些措施,但同样你可以做的是有限的。
较新的 wine 版本是最新的,因此可能能够更好地运行程序(除非有影响它的回归)。要安装当前最新版本 (Wine1.7),您可以使用官方 Wine PPA:
sudo apt-add-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install wine1.7
Run Code Online (Sandbox Code Playgroud)
如果找不到包wine1.7,请尝试再次运行安装命令,但使用wine而不是wine1.7
一般安装和配置Wine,你也可以试试这个问题。
Wine 默认复制 Windows XP,有些程序不支持它,因为它是 EOL(我认为这很方便,因为您可能可以在 Linux 下的 Wine 下运行 WinXP 的程序,并且您可以“从轨道上取消 WinXP”:)
不管怎样,首先打开Wine配置窗口:
export WINEPREFIX=~/.wine-PROGRAM-NAME/
winecfg
Run Code Online (Sandbox Code Playgroud)
~/.wine-PROGRAM-NAME/您之前创建的 WINEPREFIX在哪里。
并在“应用程序”选项卡底部选择要复制的 Windows 版本。然后再次尝试安装该应用程序。
很有可能。不要安装互联网上的随机软件,尽量确保它来自受信任的站点。
| 归档时间: |
|
| 查看次数: |
93357 次 |
| 最近记录: |