其他分享
首页 > 其他分享> > py2app setup.py用法问题

py2app setup.py用法问题

作者:互联网

好的,所以我尝试使用py2app为我的项目生成一个发行版.我仍然不确定我是否能理解它.所以我的setup.py看起来像这样:

"""
This is a setup.py script generated by py2applet

Usage:
    python setup.py py2app
"""

from setuptools import setup
import setuptools

PACKAGES = ['sqlalchemy.dialects.sqlite']
MODULES = ['sqlite3']

APP = ['tvb/interfaces/web/run.py']
OPTIONS = {'argv_emulation': True,
           'packages': PACKAGES ,
           'includes' : MODULES }
DATA_FILES = []

setup(
    app=APP,
    data_files=DATA_FILES,
    packages = setuptools.find_packages(), 
    include_package_data=True,
    options={'py2app': OPTIONS},
    setup_requires=['py2app', "pyopengl", "cherrypy", "sqlalchemy", "simplejson", 
                          "formencode", "genshi", "quantities","numpy", "scipy",
                          "numexpr", "nibabel", "cfflib", "mdp", "apscheduler",
                          "scikits.learn"]
)

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

另一个问题是,我得到一个:sqlalchemy.exc.ArgumentError:尝试运行我的应用程序时无法确定“ sqlite”的方言.经过大量的谷歌搜索,我只看到对于py2exe,您需要将sqlalchemy.dialects.sqlite作为一个软件包包括在内,但它似乎对我不起作用.我在这里想念什么吗?

最后一个是我在python setup.py py2app之前收到一个格式错误的对象(加载命令3 cmdsize不是8的倍数).这正常吗?

问候,
博格丹

解决方法:

好吧,似乎我把整个事情弄错了.

'includes' : ['sqlalchemy.dialects.sqlite']

而不是软件包,这似乎可以解决问题.

标签:py2app,python
来源: https://codeday.me/bug/20191208/2088037.html