군침이 싹 도는 코딩
pycharm 을 이용해서 패키징을 할 때 오류 해결 본문
1. pycharm 패키징 완료후 ui로 사용한 ui 파일이 같이 패키징 되지 않았던 문제
pyinstaller --add-data "포함시킬 파일;."
# --add-data 옵션을 통해서 처리했다 포함시킬 파일이 여러개라면 여러번 써주면 된다
2. QtWebEngineWidgets 이 없다는 오류
이 오류는 main.py에 임포트 과정에서 애스터리스크 (*) 를 사용해서 개발하고 마무리 과정에서 따로 임포트 해주지않아서 발생한것으로 생각된다
pyinstaller --hidden-import PyQt5.QtWebEngineWidgets
# -- hidden-import 옵션을 사용해서 처리했다
3. 개발에 사용된 이미지와 패키징한 게임이 실행되지 않는 문제
이 오류는 이미지와 패키징한 게임을 실행하는 경로가 절대경로로 되어있어서 발생하는 문제였다
이것을 상대경로로 고쳐서 문제를 해결했다
패키징한 게임의 경우
exe_file_path = C:\Users\1212\PycharmProjects\launcher\Windows\test.exe
# 절대경로의 예
base_path = getattr(sys, "_MEIPASS", os.path.dirname(os.path.abspath(__file__))) # 실행파일이 담긴 경로를 저장
exe_file_path = os.path.join(base_path, "Windows/test.exe")
# 상대경로로 수정
먼저 getattr 를 통해서 실행 파일이 담긴 경로를 저장하고
os.path.join에 베이스경로와 파일경로를 넣어주면 된다.
이미지의 경우
self.change_logo_image("C:/Users/1212/PycharmProjects/launcher/imgLogo.png") # imgLogo의 이미지 변경
# 절대경로
self.change_logo_image("image/imgLogo.png") # imgLogo의 이미지 변경
# 상대경로
이런식으로 수정해주면 된다
'Python > Pycharm' 카테고리의 다른 글
PySide2 레이아웃 ( Grid Layout ) (0) | 2023.05.26 |
---|---|
PySide2 레이아웃 ( Form Layout ) (0) | 2023.05.26 |
간단한 팁 (0) | 2023.05.26 |
Pyside2 레이아웃 ( Box Layout ) (0) | 2023.05.26 |
PyQt5 배포 파일 만들기 (0) | 2023.05.26 |