pyinstaller中的Exe在使用F选项时失败。好吧,没有这个选择

2024-09-30 04:39:33 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个python脚本上使用pyinstaller导入matplotlib.pyplot. 当生成一个充满文件的目录时,pyinstaller创建的exe可以正常运行。但是,当pyinstaller-F选项用于创建单个exe文件时,exe将失败。失败时报告两个问题:

  1. 警告:文件已存在,但不应存在:C:\Users\Vern\AppData\Local\Temp\u MEI33442\Include\pyconfig.h

  2. 回溯的最后两行报告如下:

文件“C:\Users\Vern\Documents\Python\testplot\build\testplot\out00-皮兹。皮兹\matplotlib.pyplot“,第80行,后端选择中

文件“C:\PyInstaller\PyInstaller\loader\pyi_进口商.py“,第409行,加载模块中 模块=imp.load U模块(全名,fp,文件名,self.\u\u ext元组)

ImportError:无法导入模块'PySide.QtCore'

最后一个,重要的是exe停止的地方。

我在Windows7机器上使用Python2.7.6和PyInstaller2.1。在

pyinstaller运行时会生成一些警告消息。它们看起来像这样:

警告:找不到库:QtGui4.dll依赖于C:/WinPython/python-2.7.6/lib/sitepackages/PyQt4/plugins\iconengines\qsvgicon4.dll

警告:找不到库:QtSvg4.dll依赖于C:/WinPython/python-2.7.6/lib/sitepackages/PyQt4/plugins\iconengines\qsvgicon4.dll

警告:找不到库:QtCore4.dll依赖于C:/WinPython/python-2.7.6/lib/sitepackages/PyQt4/plugins\iconengines\qsvgicon4.dll

……更像后面的那些,但被省略了。在

这些警告是由pyinstaller在使用或不使用-F选项时生成的,因此我不知道它们是否相关,但它们似乎非常可疑。我已经超出了我的专业领域,所以请原谅我的无知。无论如何,即使在不使用-F选项时出现这些警告,exe也可以正常运行。它只在使用-F选项时失败。在

我到处找了找,但没有一点运气。我希望能够使用-F选项生成一个用于分发的exe文件。我没有对pyinstaller使用任何其他选项,也没有对自动生成的spec文件做任何操作。我的其他python脚本不导入matplotlib,在使用-F转换为单个exe文件时可以正常工作


Tags: 模块文件警告matplotliblib选项pluginsexe
2条回答

这个问题的答案是: Pyinstaller QtCore Module import error

总之,pyinstaller2.1有一个QT错误,但在开发版本中已经修复了。所以,获得这个或者等待PyInstaller 2.2。在

当我试图用 onefile打包我的程序时,使用PyInstaller也得到了{},但是使用 onedir选项时没有问题。尽管PySide.QtCore在运行时如预期出现在temp目录中。在我的代码中,我直接导入PyQt4,而PySide则由其他模块导入。从您发布的内容来看,这两个模块似乎也在您的代码中使用。在

在阅读了this之后,我尝试在spec文件中添加'PySide'作为排除,以强制独占使用PyQt4,而exe现在运行良好。排除PySide或PyQt4可能对您的情况也有帮助。在

相关问题 更多 >

    热门问题