【问题标题】:Cross Platform Python Executable - Mac & Windows?跨平台 Python 可执行文件 - Mac 和 Windows?
【发布时间】:2021-10-24 13:55:48
【问题描述】:

我使用 pyinstaller 创建了一个可执行文件(桌面 GUI)。我在 Windows 上,而我要发送它的人在 Mac 上。

我的印象是 pyinstaller 是跨平台的,但是 Mac 用户在尝试运行该应用程序时遇到错误。为 Windows 和 Mac 分发我的 GUI 有哪些选择?

我找不到直接的答案,也没有 Mac 可以测试。我看到了Inno Setup,但没有找到任何说明它是否是跨平台的。

我需要创建一个可以同时运行 Windows 和 Mac 的脚本。我也在寻找一种简单的电子方式发送。

【问题讨论】:

  • 我阅读了您的链接,但我对 Mac 的使用经验为 0。我可以复制代码并在 Mac 上编译吗?还是比这更困难? GUI 依赖于 wxpython 和 pandas 库
  • 如果 pyinstaller 正在创建可执行文件,那么这就是您应该开始的地方 - 它的文档。

标签: python macos cross-platform pyinstaller python-standalone


【解决方案1】:

我对 Python 一无所知,但在互联网上快速搜索后想出了this,这可能会对您有所帮助。


几个月前,我经历了这个过程(我可能会很费力地添加)来部署一个简单的 Xamarin 跨平台应用程序。根据我自己的经验,我了解到 ma​​cOS 对如何打包软件以在计算机上进行部署有非常严格的规定。

如果您使用Visual Studio for Mac,它将自动为您构建一个打包的安装程序。但是,您必须(按年购买)Developer ID

然后,您为您的应用程序创建特定的配置文件,这些配置文件将与您的开发人员 ID 一起用于 sign 您的打包安装程序。我发现它有点复杂!

最后,您通过 mac 上的控制台按照程序提交您的包以进行自动扫描。这被称为获取您的包裹notarized(链接到有关该过程的 SO 问题)。它们为您提供一个结果,然后将其装订到包裹中。

这就像一个双重签名。完成此操作后,用户可以使用 macOS 安装该软件包。


另一种方法是用户使用名为Parallels 的软件包运行Windows 实例。我不得不说它非常好,而且我确实很享受我对该软件的试用,您可以从 macOS 内部启动 Windows(无需重新启动),因为它是 Windows,您可以简单地运行您的标准安装程序。


总之,对于 macOS,如果您没有正确地使用开发人员和应用程序 ID 对您的包进行签名,并且没有对其进行公证和装订,那么操作系统会将其扔回给您并且不会运行它。

【讨论】:

    猜你喜欢
    • 2017-11-08
    • 1970-01-01
    • 2013-11-11
    • 1970-01-01
    • 1970-01-01
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 2012-08-08
    相关资源
    最近更新 更多