问题标签 [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 投票
2 回答
2972 浏览

python - py2app IOError:[Errno 63] 文件名太长:

我正在尝试使用 python 2.6 在 OS X 10.6 上使用 py2app 打包 PySide 应用程序。

我得到的问题是 py2app 似乎陷入了一个循环并递归地将相同的目录路径附加到它自己上,然后它最终像上面一样遇到 Python 文件太长的 IOError 。下面是我得到的堆栈跟踪

剪断...(很多行都与上面和下面的相同)

解压...

下面是我的 setup.py 文件

0 投票
1 回答
660 浏览

python - 如何使用 py2app 在 32 位旧 Mac 上编译 64 位 Python 库(例如 SIP)?

我需要为 Python 编译 64 位库(例如 SIP)而不是 32 位,由我的旧 32 位 Mac 编译,以便在新 Mac 上使用 .app bandle。

看起来像放置在这里的类似问题 是否可以在 Ubuntu 下的 32 位系统上编译 64 位可执行文件?

但它看起来像是一种非常缓慢的调整方式,但我需要许多库来重建 - 原因是使用 py2app 创建一个独立的应用程序。

所有我发现降级这种过程 - 从 64 到 32 喜欢

从这里http://www.oak-tree.us/blog/index.php/2009/05/12/pyqt-mac

在 32 位系统 - 无济于事 - 将应用程序包中的 sip.so 替换为刚刚编译的文件后,我得到相同的错误“sip.so: mach-o, but wrong architecture”

感谢您的帮助!

0 投票
1 回答
1126 浏览

python - 使用 py2app 编译 64 位 Mac 应用程序

我已经使用 py2app 0.6.3 在我的 Mac OS X 10.7 上编译了Python 屏幕保护程序,但是当我在系统偏好设置中打开屏幕保护程序时,我收到以下消息:

您不能在这台计算机上使用 Silly Balls 屏幕保护程序。

我读过这条消息意味着它需要编译为 64 位。

我在 64 位系统上运行 Python 2.7.1 64 位。

如何使用 py2app 编译 64 位应用程序以使屏幕保护程序示例工作?

0 投票
1 回答
81 浏览

python - 从存根脚本导入主脚本导致冻结

我正在构建一个与 py2app 一起分发的应用程序。因为我不希望从 .app 文件中提取源代码,所以我有一个名为 run.py 的存根文件,然后运行 ​​mainapp.py 中的代码:

直接在终端中运行(不涉及 py2app)会冻结与 gevent 相关的代码部分。变成.app时的结果是一样的。以上述方式导入是否会改变解释器的任何环境?似乎很奇怪,只是冻结,没有错误消息(没有 try/catch 块。)

0 投票
1 回答
815 浏览

python - py2app 的应用程序在别名模式下正常运行,但在捆绑时不能正常运行

我有一个 pyobjc 应用程序在使用 gevent 库的仅 32 位 python 版本中运行。在 py2app 的别名模式下一切正常,但是一旦我构建了一个应用程序包,gevent 模块就找不到 httplib 库,即使它与 site-packages 目录捆绑在一起。

我已经按照建议尝试了错误导入(即使模块似乎已被打包),但无济于事。它可以找到 gevent.httplib 模块,但找不到它应该修补的模块。这可能是猴子修补功能的问题吗?

编辑:看起来 find_module 无法与我的 py2app 包一起正常工作。有解决方法吗?我不认为点模块有问题,因为 httplib 没有点(它是核心 python 库的一部分)

编辑 2:所以它肯定是 imp.find_module。使用import ('httplib') 而不是 load_module 可以修复它,但我不得不删除 sys.modules 中对 'httplib' 的引用,因为如果它已经加载,它就无法修补。我认为这不是正确的方法,尽管构建的应用程序包可以正常工作(httplib 现在是猴子补丁并允许使用 HTTPSConnection 进行初始化)。这个py2app问题有什么解决方法/修复吗?

0 投票
3 回答
1178 浏览

python - 在 py2app 生成的应用程序中包含 opencv

我正在使用装有 OS 10.7.2 和 Apple 默认 python 2.7.1 的 Mac。我通过源代码安装了 opencv 2.3.1,并且可以确认它import cv可以在 python 中工作。我创建了一个最小的python脚本(保存为“cvTest.py”),它只import cv在顶部,没有别的,然后我使用了py2app(通过终端命令py2applet --make-setup cvTest.py; python setup.py py2app)。当我将生成的独立应用程序移动到未安装 opencv 的另一台计算机(mac、OS 10.7.2)并尝试运行该应用程序时,它会崩溃,并通过 console.app 出现以下错误:

然后我创建了一个简单的 bash 脚本,让我深入研究独立应用程序并从终端运行应用程序的二进制文件:

执行此操作会产生以下错误:

那么,这里发生了什么?为什么我会收到错误消息,有什么方法可以将 opencv 与 py2app 创建的应用程序捆绑在一起,这样就import cv可以了?

0 投票
1 回答
764 浏览

python - py2app 不包括 pythonpath

我正在尝试使用 py2app 构建一个应用程序。我可以构建应用程序,但是当我运行它时,我进入ImportError控制台,导入错误是No module named PythonApp我的所有源代码所在的文件夹,其位置在我的PYTHONPATH.

我一直在导入本地文件,from PythonApp import file而不仅仅是import file为了帮助避免命名空间问题。

我尝试使用以下标志构建它,python setup.py py2app --use-pythonpath但这似乎没有任何区别。

  • 我应该将整个导入语句更改为import file吗?
  • 我怎样才能让 py2app 实现我的PYTHONPATH
0 投票
0 回答
487 浏览

python - OSX-lion 上的 py2app

我对在 MacOS 10.7.2 版本上构建应用程序有疑问。好的,所以我已经成功地将我的应用程序捆绑在 10.5.8 上,但现在我们也需要一个 64 位发行版,所以我们正试图在 10.7.2 上构建它。这来自我看到的默认 64 位 python 2.7.1 和 py2app 0.5.3 作为默认值。

首先,我尝试运行相同的脚本,出现与模块图相关的错误:

好的,接下来我尝试在模块图中的那一行进行附加检查,以查看条目是否确实存在,这似乎可以修复错误并生成一个包。现在的问题是我们需要使用在

/目录/MacOS/python

产生额外的进程(这似乎在 10.5.8 生成的包中工作),但现在我得到:

现在有效的打印让我看到实际上生成了一个应用程序,但生成新进程失败了,所以我恢复了所有更改并在 10.7.2 和 10.5.8 上尝试了一个简单的“hello.py”。

捆绑的应用程序适用于两者,但生成的 python 不:

任何线索为什么会发生这种情况/解决方法?

0 投票
1 回答
1041 浏览

python - 与 py2app 捆绑时,PySide 应用程序无法在其他计算机上运行

我有一个小应用程序正在尝试与 py2app 捆绑在一起。起初,我遇到了 PySide 在捆绑后无法正确链接的问题,但我通过在最终构建的容器中添加sys.path.insert(0, os.path.join(os.getcwd(), 'lib', 'python2.6','lib-dynload'))到(至少在本地)修复了该问题。__boot__.py

建成后,它在我的电脑上运行良好。不幸的是,尝试在另一台计算机上运行它会导致:

我是否在某个地方错过了正确链接 PySide 的额外步骤?这是我的(无趣)setup.py

0 投票
3 回答
1448 浏览

python - 在 py2app 应用程序(python)中捆绑文本文件

我最近学习了 Python (2.7),并一直在用 AI 制作一些简单的棋盘游戏,例如练习。我目前正在制作一个智能刽子手游戏,它需要包含一个字典文件。(我有一个文本文件,每行都有一个新单词)。我成功地将 py2app 用于其他内容,例如:connect-four.zzl.org,不幸的是,当我为我的新 hangman 程序运行 py2app 时,它似乎不包含我的文本文件。谁能帮我弄清楚如何包含这个文件,以便程序可以像我链接到的连接四游戏一样分发?

非常感谢您。(我正在运行 OS X 10.7,如有必要,可以提供任何其他必要信息)