Good day!
I'm using python 3.5.2 with qt5, pyqt5 and sip14.8. I'm also using the latest pyinstaller bracnch (3.3.dev0+g501ad40).
I'm trying to create an exe file for a basic hello world program.
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_())
At first, I used to get some errors regarding crt-msi. So I've reinstalled SDK and c++ runtime and added them to my environment. But now I keep getting errors about missing dlls (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:
I've checked and both dlls exist and have their PATH set. I also tried to manually add them to my dist folder, but it didn't helped.
I'll highly appreciate any advice you might have!
This may be more like a workaround and Pyinstaller might need fixing.
I found out that
--paths
argument pointing to the directory containing Qt5Core.dll, Qt5Gui.dll, etc. helpedThis has now been fixed in the latest development branch of PyInstaller, see this Issue for PyInstaller on GitHub.
Search in C: drive for dll and set the path in pyinstaller command. The below command fixed the above pyinstaller error in windows 10:
I read all complicated solutions on github and stackoverflow for this problem. However, the below simple solution is what worked for me:
Step 1: pip3 uninstall pyinstaller
Step 2: pip install pyinstaller
Step 3: pyinstaller --onefile filename.py
I tried this solution on 2 different computers which were facing the same problem. Both worked. Please let me know if this works for you as well. Thumbs up would be appreciated after that. Cheers
Normally adding
--Path
argument pointing directory containing unfound library solves the problem. There might be a problem if command string parsing if you are using PyInstaller 3.3dev. This generally happens if the path contains spaces. In such case, you can modifypathex
argument in.spec
file generated by PyInstaller and then run it with PyInstaller to build executable.Hopefully, this will be fixed soon.....