【发布时间】:2016-09-07 21:19:08
【问题描述】:
我正在使用 Anaconda 发行版中的 Python 3,并尝试将简单的 Python 程序转换为 OS X 应用程序(在 El Capitan 上运行)。按照the tutorial中的说明,我跑了
py2applet --make-setup my-script.py
python setup.py py2app -A
一切正常,没有错误,但是当我尝试启动应用程序时,我收到以下错误消息:
my-script:无法(原文如此)定位 python 运行时。您可能需要安装 Python 的框架构建,或编辑此应用程序 Info.plist 文件中的 PyRuntimeLocations 数组。
我理解这意味着我应该添加 Anaconda 的 python 的路径(在我的 bash PATH 中,但启动器不知道)。但是,应用程序自动生成的Info.plist 已经指向 Anaconda python 二进制文件:
<key>PythonInfoDict</key>
<dict>
<key>PythonExecutable</key>
<string>/Applications/Experimental/anaconda/bin/python</string>
...
我看不出这里有什么需要解决的。我已经阅读了这些相关问题:
- How do I use py2app with a virtual environment?
- py2app is not copying the python framework to the new app while using virutalenv
第一个问题涉及相同的错误消息,并按照第二个问题中的建议解决。但据我了解,这些问题描述了相反的情况: OP 正在运行与操作系统一起分发的 python,并且想要分发他们的应用程序;解决方案是使用单独安装的python。我 am 使用非系统 python,我还没有尝试分发任何东西。那么是什么造成了这里的麻烦,解决方法是什么?
【问题讨论】:
-
您是否尝试过不使用别名选项(例如
python setup.py py2app)或open -a dist/MyApplication.app运行应用程序? -
有用的建议!
open -a dist/my-script.app失败(“无法找到名为 'dist/my-open.app' 的应用程序”),但尝试完整的应用程序构建(仍然不起作用但)解决了问题:libpythondll 未命名正如 py2app 所期望的那样。我可以通过编辑生成的Info.plist来修复它。
标签: python macos anaconda py2app