개발 이슈,해결법

AttributeError: Module 'PyQt5' has no attribute '__version__'

난쏘공돌이 2021. 7. 19. 18:40

ImportError: DLL load failed while importing QtWidgets: 지정된 모듈을 찾을 수 없습니다.

 

필자는 해당 오류를 pyinstaller를 통해 pyqt로 ui를 구현한.py를 exe파일로 변환하려다 실패했고,

여러가지 방법을 시도하던 중, 환경변수가 전부 날라가서 anaconda를 다시 설치하고 나서 경험했다.

anaconda prompt에서의 오류
vs코드에서의 오류

결론적으로 문제는 해결되었다.

 

호환성 문제이며, 현재pyinstaller의 경우 pyqt5.15버전 에 대해 호환성이 맞지 않아 제대로 동작하지 못한다.

 

이 때문에, pip uninstall pyqt5 .. pip install pyqt5를 반복해도 해결되지 않는다.

 

따라서 pip install --user pyqt5==5.13 명령어를 통해 버전을 특정 지어주어야 하며,

 

추가적으로 QtWebEngine역시 그냥 pip install QtWebEngine 를 해주는 것이 아니라 

pip install --user QtWebEngine==5.13 와 같이 버전을 다 맞춰주어야 소스코드가 정상작동할 수 있다.

 

 

pip uninstall pyqt5
pip install --user pyqt5==5.13
pip install --user qtwebengine==5.13
pip install --user pyqt5.sip

이것은 본인이 해결하는데 필요했던 명령어들이다.

 

install하는데 문제가 있다면 해당 모듈을 먼저 uninstall하고 실행하길 바란다.