在 M1 Mac 上安装 Pajek

在 M1 Mac 上安装 Pajek

我正在尝试在 M1 Mac Big Sur 11.2.3 上安装 Pajek。我尝试安装 Wine,使用 Homebrew 并使用命令brew install wine,然后使用wine Pajek.exewine64 Pajek.exe。我还尝试了给出的这个解决方案这里,我无法通过步骤 4 并收到一条错误消息“前缀创建因错误而退出”。

先感谢您。

答案1

Wine(最初是“Wine 不是一个模拟器“) 是一个兼容层,能够在多个符合 POSIX 标准的操作系统(例如 Linux、macOS 和 BSD)上运行 Windows 应用程序。Wine 不会像虚拟机或模拟器那样模拟内部 Windows 逻辑,而是动态地将 Windows API 调用转换为 POSIX 调用,从而消除了其他方法的性能和内存损失,并允许您将 Windows 应用程序干净地集成到桌面中。

我引用了上面的内容WINE 主页因为需要说的是Wine 不是一个模拟器

您的 Mac 配备基于 ARM 的 M1 处理器。您正在运行的程序(这个?) 是 x86-64 可执行文件。因为Wine 不是一个模拟器它无法将 x86 代码转换为 ARM 代码。WINE 要求机器架构匹配,因此即使您拥有支持 ARM 的 WINE 版本,您也需要一个原生 Windows ARM 版本的 Pajek。鉴于我所知道的唯一运行 ARM 的 Windows 设备是 Surface Pro X,软件开发人员没有理由将他们的代码移植到 ARM 上的 Windows 上运行。

您要么需要为您的平台重新编译 Pajek,要么在 x86(Intel/AMD)平台 Mac 而不是您拥有的 ARM M1 处理器上运行它。

您无法按照您尝试的方式在您现有的计算机上运行该程序。


显然有一些黑客方法在 ARM 上模拟 x86,但这正陷入“如果你不得不问,你真的不想知道”类型的兔子洞。如果你已经陷入了在它从未设计的平台上运行某些东西的困境(MacOS ARM),使用一个勉强能将两个其他如果将不同的平台(Linux 和 Windows)放在一起,那么这完全是另一个痛苦的世界。至少,这种模拟对性能有重大影响,对于运行“轻量级程序”以外的严肃任务来说,这将是一个真正的障碍。

答案2

我遇到了同样的问题,我刚刚解决了它。使用 Wine 6.0.1 以上版本

步骤:

  1. brew install --cask xquartz
  2. brew install --cask --no-quarantine wine-stable
  3. 下载 paject 的 Zip 文件至 64 位。
  4. wine64 Pajek.exe

相关内容