使用PyInstaller打包Enaml应用程序

时间:2017-11-14 20:42:03

标签: python pyside pyinstaller enaml

我有一个窗口/视图enaml应用程序(后端是PySide)。我使用PyInstaller将它打包到.exe并且它成功完成但是当我运行可执行文件时它会抱怨.enaml文件中的模块(我已经将文件和解析器包含在{ {1}}文件,见下文)。对于出了什么问题的任何想法?

以下是运行.spec文件的错误:

.exe

Traceback (most recent call last): File "colEq.py", line 70, in <module> from colEq import CaseView ImportError: cannot import name CaseView CaseView文件中定义,引用的行是:

colEq.enaml

我的spec文件在PyInstaller生成的默认值之后添加了以下内容:

with enaml.imports():
   from colEq import CaseView`

该平台是Python 2.7,x86,Win 10。

1 个答案:

答案 0 :(得分:0)

问题出在fbs本身。 src/main/python目录中所有添加的非python代码都不会添加到程序包中。除了修补fb本身,我没有找到其他方法。您可以在此处https://github.com/Infernion/fbs/commit/034ccc159dba2ec8b49fb1a03e7c4a20260cbdfb

检查更改

使用enaml库中的内部.enaml小部件也存在问题。还应该以某种方式将它们添加到发行版中。