问题标签 [py2app]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
894 浏览

python - 75 MB Helloworld 与 py2app !

我正在测试不同的语言来开发适用于 Mac 和 Windows 的桌面应用程序。

我认为 Python+Wx 值得一试,所以我写了一个简单的 hello world。

然后,我尝试使用 py2app 将我的应用程序打包为 Mac 应用程序。

发现我的 hellworld.app 重量高达 75 MB 真是令人惊讶!(然后我在运行时出错,但这不是问题)

这是我的问题:有没有办法分发重量小于几 MB 的独立 wxPython 应用程序?(例如,地址簿应用程序)。

(一个 Swing HelloWorld 大约 3KB,加上 JRE 大约 20MB)

谢谢

0 投票
1 回答
243 浏览

python - Py2App:需要包含文件,但文件太大

目前,我正在使用 py2app 将 python 脚本转换为独立的应用程序。但是,我的脚本需要 2GB 的 unix 可执行文件。Py2App 无法处理包含文件或资源那么大的文件,因为它在创建独立文件时会产生错误。无论如何我可以在我的独立应用程序中包含这个文件吗?

任何意见或建议将不胜感激。非常感谢。

0 投票
2 回答
1490 浏览

python - python py2app help

I tried using py2app, but I can't figure out where to put the filename of the file I want to make the standalone for. What command do I need to run? I'm extremely confused...

0 投票
1 回答
692 浏览

python - Lion 上的 py2app 正在创建没有 python 框架或资源的空应用程序

我有一个 python 脚本,在升级到 Lion 之前,我已经成功地将它与 py2app 打包。

现在,当我运行 py2app 它完成时没有错误,但是生成的 .app 只有 216K,并且在执行时它抱怨缺少 objc(这是脚本中的第一个导入)。

py2app 输出:

运行应用程序:

生成的应用程序如下所示:

它曾经看起来像:

0 投票
11 回答
47097 浏览

python - 如何使用 Python 创建 Mac OS X 应用程序?

我想创建一个可以在 Windows 和 Mac 上运行的 GUI 应用程序。为此,我选择了 Python。

问题出在 Mac OS X 上。

有 2 个工具可以为 Mac 生成“.app”:py2app 和 pyinstaller。

  1. py2app 还不错,只是在包里加了源码。我不想与最终用户共享代码。
  2. Pyinstaller 生成 UNIX 可执行文件,那么如何在 Mac 上运行呢?我用这个可执行文件创建了一个包,但结果“.app”不起作用。

问题是:

  1. 如何配置 py2app 以将源代码包含在可执行文件中,这样最终用户将无法访问我的程序?
  2. 如何将 UNIX 可执行文件转换为 Mac“.app”?
  3. 有没有办法用 GCC 编译 Python 代码?
  4. 在 Windows 中这很容易,我从 Python 代码创建了一个“exe”文件,它可以工作。是否可以为 Mac 创建单个文件“应用程序”?

PS 我使用两台计算机(Windows 和 Mac),Python 2.7、wxPython、py2exe、py2app 和 pyinstaller。

另外,我查看了这些网站:

0 投票
1 回答
2602 浏览

python - py2app setup.py 使用问题

好的,所以我正在尝试使用 py2app 为我的项目生成分发。我仍然不确定我是否掌握了窍门。所以我的 setup.py 看起来像这样:

所以我的第一个问题是:我应该在我的 py2app 模块中包含什么?py2app 是否知道扫描 setup_requires 中的内容并包含它们,还是我需要在 MODULES 中为它们添加一些条目?

另一个问题是我得到一个:sqlalchemy.exc.ArgumentError: Could not determine dialect for 'sqlite'尝试运行我的应用程序时。经过大量谷歌搜索后,我只看到 py2exe 您需要将其sqlalchemy.dialects.sqlite作为一个包包含在内,但它似乎对我不起作用。我在这里错过了什么吗?

最后一个是我得到一个:malformed object (load command 3 cmdsize not a multiple of 8)就在python setup.py py2app. 这是正常的吗?

问候, 博格丹

0 投票
2 回答
902 浏览

python - 使用 py2app 创建的 Python Mac 应用找不到 cvs 命令

开始之前的一些系统/软件信息:

操作系统:Mac OS X 10.7.1

Python:活动 Python 2.7.2.5

wxPython:wxPython2.9-osx-2.9.1.1-cocoa-py2.7

我有一个基于 wxpython 的小型 Mac 应用程序,它只是测试 cvs 和 svn 在 Mac 平台上的可用性。这是 Mac 应用程序所基于的 python 代码:

这是这个简单 GUI 的屏幕截图,带有一个名为“运行”的按钮。

带有单个“运行”按钮的简单 cvs 测试应用程序的屏幕截图

在按下“Run”时,它会执行 OnRun 方法并将两个命令“cvs”和“svn help”的输出保存到用户主目录中名为“cvs_test”的文件中。当我在命令行上使用 python 解释器运行这段代码时,这两个命令的输出都被吐到一个文本文件中。cvs 和 svn 命令都被识别并且文件 cvs_test 中的输出与预期的一样。

现在的问题是当我使用 py2app 和以下脚本创建一个 Mac 应用程序时:

Mac 应用程序创建得非常好。但是,当我打开 Mac 应用程序并点击“运行”按钮时,在它创建的 cvs_test 文件中,它显示:

sh:cvs:找不到命令

Mac 应用程序显然正在运行相同的脚本,但它找不到 cvs 命令。

在我的主目录中,以下是我的 .profile 文件的内容:

我按照 Apple 论坛上发布的技巧(单击此处)添加了路径“/Developer/usr/bin”,以解决 OS X Lion 上的 cvs 问题。

是什么导致 python 脚本在从命令行运行时识别 cvs,而在同一脚本作为已编译的 Mac 应用程序运行时无法识别它?

这个问题想死我了。我的 bash 和 sh 从终端运行时都可以找到 cvs,但 Mac 应用程序不能。任何建议将不胜感激。

0 投票
3 回答
8155 浏览

python - 如何通过 Python 为 Python 脚本创建 Mac 应用程序包

我想创建一个简单的 Mac 应用程序包,它调用一个简单的 Python 脚本。我想在 Python 中做到这一点。

有没有简单的方法?

我尝试使用 py2app 但不知何故失败了,例如:

给出:

我也试过:

这也不起作用(TypeError: dist must be a Distribution instance)(我不太确定如何使用py2app.build_app.py2app,也没有真正找到很多关于它的示例/文档)。

也许 setuptools/py2app 左右对我的用例来说太过分了。我只想创建一个简单的空应用程序包,将 Python 脚本复制到其中并以调用 Python 脚本的方式配置其 Info.plist。

0 投票
5 回答
2243 浏览

python - 如何强制 py2app 以 32 位模式运行应用程序

我正在尝试在 Mac OS X 10.6 上使用 py2app 构建应用程序包。该应用程序使用了一些仅针对 32 位编译的库,因此当应用程序运行时,会出现 ImportError “没有适当的 64 位架构”。如何告诉 py2app 强制应用程序以 32 位模式运行?

0 投票
1 回答
400 浏览

python - 在 Mac 中以管理员身份运行已编译的 python (py2app)

在查看了在 Vista 中以管理员身份运行编译的 python (py2exe)之后,我想知道是否有一种简单的方法可以在 Python (特别是 py2app) 中获取 Mac 身份验证对话框

我知道 mac 也有内置的身份验证服务http://developer.apple.com/library/mac/#documentation/Security/Reference/authorization_ref/Reference/reference.html

另外,我知道我可以做这样的事情:

但想知道是否有内置的方法可以做到这一点