我正在使用 buildout 创建本地 python 环境,然后使用本地 python 通过 py2app 创建我的应用程序。但是,当我进入 .app 文件时,特别是进入 Contents/MacOS/时,只有系统 python 的快捷方式。我希望 py2app 以某种方式使用 local python 以便它只依赖于自身,而不依赖于系统 python。
所以我的问题是:我该如何解决这个问题,以便 py2app 捆绑我的自定义本地版本的 python2.7,这样我的应用程序将完全独立,而不管本地 python 版本如何?
如果更多信息有帮助,请告诉我。
我的设置.py
from setuptools import setup
APP = ['main.py']
DATA_FILES = ['src/icon.xib']
OPTIONS = {
'argv_emulation': True,
'packages': [ 'requests' ],
'iconfile':'src/myApp.icns',
'plist': {'CFBundleShortVersionString':'0.1.0',
'LSUIElement': True
}
}
setup(
name='myApp',
package_dir = {'':'src'},
app=APP,
data_files=DATA_FILES,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
)
请您参考如下方法:
Py2app 不会在您的应用程序包中包含系统文件,例如/System/Library/Frameworks 中的 python 安装。
要创建还包含 Python 的 bundle ,您需要安装单独版本的 Python(以及您使用的所有库)。
但是请注意,使用系统版本的 Python 创建的应用程序应该可以在具有相同版本的 OSX 或更高版本的机器上正常运行。
