[Python] Pyinstaller 응용
이전 포스팅(https://maduinos.blogspot.com/2023/03/python.html)에서 pyinstaller 사용법에 대해서 간단히 다뤘는데 배포 관련해서 좀 더 응용하는 부분들이 있어서 간단히 백업 겸 추가 포스팅 진행 해본다.
python을 설치 후 기본적으로 venv 를 보통 많이 활용하는데 pyinstaller는 venv 의 환경설정에 기반하여 패키징을 만든다.
때문에 패키징을 진행할 때는 가능하면 실제로 사용하고 있는 패키지만 설치하고 버전에 맞는 패키지들만 설치하는게 좋다. 특히 MS Store 를 통해서 설치한 python은 pyinstaller로 패키징 했을 때 트로이 바이러스로 인식하거나 패키징 시 라이브러리들과 호환성이 부족하여 여러 추가 설정들이 필요할 수 있으므로 python 공홈을 통해서 필요한 라이브러리만 설치해서 venv 환경으로 패키징 하자.
- 가상환경 설정 방법(https://docs.python.org/ko/3/library/venv.html)
python -m venv myenv
파이썬 설치 후 가상환경을 만드는 방법으로 원하는 폴더 이름이나 절대 경로 적어주면 된다.
가상환경으로 만드는 원하는 파이썬 버전이 있다면 원하는 버전의 파이썬을 실행하여 가상환경을 만들어 준다.
c:\Python35\python -m venv myenv35
가상환경을 실행하는 방법은 가상환경 폴더로 이동하여 다음 경로에 파일을 실행하면 된다.
.\myenv\Scripts\activate
- pyinstaller 패키징
필요한 라이브러리만 설치했으면 패키징을 해야 하는데 번도리 작업에는 다음과 같이 진행하였다.
pyinstaller --onefile --noconsole -n=burndori --icon=burndori.ico --add-data="burndori.ico;." burndori.py
–onefile : 한 개의 파일로 만들고
–noconsole : 콘솔창을 만들지 않고
-n : 이름은 burndori 로 만들고(실행했을 때 시스템에 burndori로 표시됨)
–icon : 프로그램 아이콘은 burndori.ico 로 만들고
–add-data : 실행했을 때 시스템 프로세스에 표시되는 아이콘도 burndori로 표시
패키징 했을 때 실제로 아이콘이 반영되지 않는 문제도 있었는데 아래 포스팅으로 해결되었다.
Link : [python] pyinstaller icon not change
pyinstaller 를 패키징하여 사용할 때 자주 이용할 것 같음.
끝. :)
도움이 되셨다면 더 좋은 정보 공유를 위해 광고 클릭 부탁 드립니다 :)
0 댓글