我正在尝试使用py2exe将Python项目转换为exe。我的项目目录结构是:
project/
__init__.py
main.py
src/
__init__.py
interface/
__init__.py
window.py
secondary.py
ui/
settings.ui
icons/
project.png
在main.py
中,有import src.interface.window as win
语句,当我尝试使用py2exe创建exe时,它会显示错误消息:The following modules appear to be missing: [src.interface.window]
。我不知道如何在设置脚本中包含所有模块,以便distutils
可以识别它们。
我的设置脚本:
import py2exe
from distutils.core import setup
setup(packages=['project.src.interface'],
package_data={'project': ['ui/*', 'icons/*']},
windows=[{'script': 'project/main.py'}],
options={'py2exe': {'skip_archive': True, 'includes': ['sip', 'pgmagick', 'PyQt4.QtGui', 'PyQt4.QtCore']}})
答案 0 :(得分:0)
尝试此操作(假设安装文件位于project/
目录中):
setup(name='project'
packages=['project', 'project.interface'],
package_dir={'project': 'src', 'project.interface': 'src/interface'},
package_data={'project': ['ui/*', 'icons/*']},
windows=[{'script': 'project/main.py'}],
options={'py2exe': {'skip_archive': True, 'includes': ['sip', 'pgmagick', 'PyQt4.QtGui', 'PyQt4.QtCore']}})
然后:
import project.interface.window
(注意:我没有测试过它)