파이썬

파이썬 배포파일 만들기 ( pyinstaller )

LEEHANDS 2022. 5. 23. 16:48
반응형

참고 사이트 : https://blog.naver.com/blueqnpfr1/221582183962

pip3 install pyinstaller

 

pyinstaller 를 설치하고 작성한 코드를 컴파일 해봅니다.

일반적으로 _pycache_폴더를 삭제한뒤 윈도우 쉘에 다음 명령어를 입력해보자

 

파이참에서 실행하면

 

 

이제 exe 파일을 만들어봅시다.

pyinstaller main.py

아래와 같이 못보던 파일과 폴더들이 생성됩니다.

 

spec 파일은 소스코드를 컴파일 할 때의 규칙을 기록한 파일

필요한 경우 이 파일을 수정하여 좀더 원하는 결과물을 만들어 낼 수 있다.

dist 폴더에는 main 이라는 폴더가 만들어져있는데 main.exe 가 존재한다.

단 다른 기기에서 main.exe. 를 실행하려면 이 폴더를 통째로 넘겨줘야하는 점이 있다.

이렇게 복잡한 팔일을 원하지 않는다면 하나의 exe 파일안에 모두 숨질 수 있다.

이를 위해서는 옵션 -F 를 추가하면됩니다.

pyinstaller -F main.py

진짜 하나만 남았다 ㅋㅋ

 

pyinstaller 에는 다양한 옵션이 있는데 아래를 참고하자

옵션 상세 설명  
-F, --onefile 필요한 모든 파일을 하나의 실행파일로 만든다.  
-D, --onedir 필요한 모든 파일을 하나의 폴더에 담는다.  
-w, --windowed, --nonconsole 실행할 때 윈도우 명령프롬프트 창이 열리지 않도록한다.  
-c, --nowindowed, --console 실행할 때 윈도우 명령프롬프트 창이 열리도록 한다.  
--icon=<파일경로\파일명> 실행 파일에 보여질 아이콘을 지정하낟.  
--spec <파일경로> .spec 파일을 저장할 경로를 지정한다.  
--clean 새로운 실행파일을 만들기 전에 pyinstaller 의 모든 캐시와 임시파일을 삭제한다.  

 

SPEC 파일 생성 및 수정

바로 exe 파일을 생성할 수 있으나 , ui 파일 의존성 때문에 실행되지 않는 경우가 발생한다.

따라서, .spec 파일을 생성 수정하여 exe 파일을 생성해야 의존성 문제를 해결할 수 있다.

pyi-makespec --onefile --noconsole -n hello.exe hello.py

main.exe.spec 파일이 생성되었다.

 

반응형