使用pyinstaller时缺少dll文件

shu*_*ltz 8 python dll qt pyinstaller

美好的一天!

我正在使用python 3.5.2与qt5,pyqt5和sip14.8.我也使用最新的pyinstaller bracnch(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_())
Run Code Online (Sandbox Code Playgroud)

起初,我曾经遇到过一些关于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:
Run Code Online (Sandbox Code Playgroud)

我检查了两个dll并且设置了PATH.我也尝试手动将它们添加到我的dist文件夹中,但它没有帮助.

我非常感谢您的任何建议!

J.J*_*ala 18

这可能更像是一种解决方法,Pyinstaller可能需要修复.

我发现--paths指向包含Qt5Core.dll,Qt5Gui.dll等目录的参数有帮助

pyinstaller --paths C:\Python35\Lib\site-packages\PyQt5\Qt\bin hello.py
Run Code Online (Sandbox Code Playgroud)