再见!
我将python 3.5.2与qt5、pyqt5和sip14.8一起使用。 我也在使用最新的pyinstaller branch(3.3.dev0+g501ad40)。
我试图为一个基本的hello world程序创建一个exe文件。
from PyQt5 import QtWidgets
import sys
class newPingDialog(QtWidgets.QMainWindow):
def __init__(self):
super(newPingDialog, self).__init__()
self.setGeometry(50, 50, 500, 300)
self.setWindowTitle("hello!")
self.show()
app = QtWidgets.QApplication(sys.argv)
GUI = newPingDialog()
sys.exit(app.exec_())
一开始,我经常遇到一些关于crt-msi的错误。所以我重新安装了SDK和c++运行时并将它们添加到我的环境中。 但是现在我不断地得到关于缺少dll的错误(qsvg,Qt5PrintSupport)
6296 WARNING: lib not found: Qt5Svg.dll dependency of C:\users\me\appdata\local\programs\python\python35\lib\site-pac
kages\PyQt5\Qt\plugins\imageformats\qsvg.dll
6584 WARNING: lib not found: Qt5Svg.dll dependency of C:\users\me\appdata\local\programs\python\python35\lib\site-pac
kages\PyQt5\Qt\plugins\iconengines\qsvgicon.dll
6992 WARNING: lib not found: Qt5PrintSupport.dll dependency of C:\users\me\appdata\local\programs\python\python35\lib
\site-packages\PyQt5\Qt\plugins\printsupport\windowsprintersupport.dll
7535 WARNING: lib not found: Qt5PrintSupport.dll dependency of c:\users\me\appdata\local\programs\python\python35\lib
\site-packages\PyQt5\QtPrintSupport.pyd
8245 INFO: Looking for eggs
8245 INFO: Using Python library c:\users\me\appdata\local\programs\python\python35\python35.dll
8246 INFO: Found binding redirects:
我已经检查过了,两个dll都存在并设置了它们的路径。我还试图手动将它们添加到dist文件夹中,但没有起到任何作用。
我将非常感谢你的任何建议!
这可能更像是一种解决方法,Pyinstaller可能需要修复。
我发现指向包含Qt5Core.dll,Qt5Gui.dll等目录的
--paths
参数有助于我阅读了关于github和stackoverflow的所有复杂解决方案。 不过,下面的简单解决方案对我很有用:
步骤1:pip3卸载pyinstaller
步骤2:pip install pyinstaller
步骤3:pyinstaller--onefile filename.py
我在两台面临相同问题的不同计算机上尝试了这个解决方案。 两者都有效。 如果这对你也有用,请告诉我。在那之后请竖起大拇指。 干杯
现在,PyInstaller的最新开发分支已经修复了这个问题,请参见this Issue for PyInstaller on GitHub。
相关问题 更多 >
编程相关推荐