解决错误:通过 Wine 运行 Xilinx

解决错误:通过 Wine 运行 Xilinx

我已经运行了适用于 Windows 的 Xilinx 14.7 完整安装程序成功地通过 Wine 在前缀 上com.xilinx.verilog,然后去~/Library/Application\ Support/com.xilinx.verilog_145331572525077/确认所有安装的文件都就位,它们c\:/14.7/ISE_DS位于ISE Design Suite 14.7.desktopc\:/users/patrick/Destop/ISE Design Suite 14.7.lnkc\:/users/Public/Desktop/.desktop通过安装 Xilinx 生成的文件内容为:

[Desktop Entry]
Name=ISE Design Suite 14.7
Exec=env WINEPREFIX="/Users/patrick/Library/Application Support/com.xilinx.verilog_145331572525077" wine C:\\\\windows\\\\command\\\\start.exe /Unix /Users/patrick/Library/Application\\ Support/com.xilinx.verilog_145331572525077/dosdevices/c:/users/Public/Desktop/ISE\\ Design\\ Suite\\ 14.7.lnk
Type=Application
StartupNotify=true
Comment=ISE Design Suite 14.7
Path=/Users/patrick/Library/Application Support/com.xilinx.verilog_145331572525077/dosdevices/c:/14.7/ISE_DS/ISE
Icon=E55D_ise.0

我尝试Exec直接在终端中运行该字符串,但出现错误:

err:module:import_dll Library NDIS.SYS (which is needed by L"C:\\windows\\system32\\drivers\\npf.sys") not found
err:winedevice:ServiceMain driver L"NPF" failed to load
err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
fixme:iphlpapi:NotifyAddrChange (Handle 0x10ef550, overlapped 0x10ef55c): stub
wine: configuration in '/Users/patrick/Library/Application Support/com.xilinx.verilog_145331572525077' has been updated.
fixme:exec:SHELL_execute flags ignored: 0x00000100
Application could not be started, or no application associated with the specified file.
ShellExecuteEx failed: Success.

我该如何解决这个错误?

编辑我发现npf.sys由于 WinPcap 安装失败而丢失了,所以我从网站上单独下载了它,现在运行该Exec字符串会出现以下错误:

err:module:import_dll Library NDIS.SYS (which is needed by L"C:\\windows\\system32\\drivers\\npf.sys") not found
err:winedevice:ServiceMain driver L"NPF" failed to load
DbgPrint says: XPC4DRVR.SYS: DriverEntry - V1.04...
DbgPrint says: XPC4DRVR: Create Device name (\Device\XILLPT-1)
DbgPrint says: XPC4DRVR: Create Device link (\DosDevices\XILLPT-1)
DbgPrint says: XPC4DRVR: Port name (LPT1) for deviceObject (001113A8h)
fixme:ntoskrnl:IoInitializeTimer stub: 0x1113a8, 0x54315d, 0x111460
DbgPrint says: XPC4DRVR:  Failed initializing timer! Status: C0000002
fixme:exec:SHELL_execute flags ignored: 0x00000100
Application could not be started, or no application associated with the specified file.
ShellExecuteEx failed: Success.

我查了一下,npf.sys确实位于c\:/windows/system32/drivers。怎么办?

答案1

我决定尝试.lnk通过从 wine 菜单中打开 DOS 提示符并com.xilinx.verilog设置前缀来直接启动该文件。导航到C:\users\Public\DesktopI run后start "ISE Design Suite 14.7.lnk",它打开了应用程序窗口!我目前正在寻找一种更好的方式来运行它,但我很高兴它无需运行 Bootcamp 即可运行!

编辑

我最终使用 AppleScript 编辑器创建了一个快捷方式应用程序,并将以下代码粘贴到:

set winePref to "/Users/patrick/Library/Application Support/com.xilinx.verilog_145332206926253"
set execPath to winePref & "/drive_c/users/Public/Desktop/ISE Design Suite 14.7.lnk"
do shell script "env WINEPREFIX=" & quoted form of winePref & " /opt/local/bin/wine start /Unix " & quoted form of execPath

请注意,您的特定二进制路径wine可能与我的不同,因此请务必进行检查。

相关内容