10 votes

Python 3.6.x PyInstaller donne l'erreur "No module named 'PyQt5.sip'".

J'ai développé quelques programmes qui fonctionnent bien avec Python 3.5.4, mais à cause de certaines erreurs concernant win32, j'ai dû passer à Python 3.6.4, mais quand je construis mon projet avec pyinstaller, j'obtiens :

C:\Users\User\Desktop\dist\mycommentator>mycommentator.exe
Traceback (most recent call last):
  File "mycommentator.py", line 6, in <module>
  File "c:\users\user\appdata\local\programs\python\python36\lib\site-packages\PyInstaller\loader\pyimod03_importers.py", line 714, in load_module
    module = loader.load_module(fullname)
ModuleNotFoundError: No module named 'PyQt5.sip'
[1532] Failed to execute script mycommentator

J'ai essayé de réinstaller Python, j'ai donc installé Python 3.6.4/Python 3.6.5, cette erreur m'est aussi arrivée. Quel que soit le code que je construis dans PyQt5, à chaque fois cette erreur.

J'ai également essayé de déplacer sip.pyd dans le dossier du projet, mais l'erreur se produit toujours. J'ai également essayé pip install --upgrade sip Cela n'a pas aidé. J'ai aussi essayé d'installer la version develop du pyinstaller, cela n'a pas aidé non plus.

16voto

johnashu Points 1522

J'ai rencontré le même problème qui est apparemment un bogue connu dû à sip sont désormais installés séparément.

https://github.com/pyinstaller/pyinstaller/issues/3630

Lors de la création de l'installateur, j'ai ajouté la ligne :

--hidden-import PyQt5.sip

Cela n'a posé aucun problème.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X