[python] py2app 파이썬 mac OS 실행파일 만들기

py2app으로 py 응용프로그램(app) 만들기

py2app 은 command 명령 프로그램으로  py(Python scripts) 파일로 부터 단독 실행가능한 프로그램을 만들어 줍니다. 윈도우용은 py2exe가 있습니다.

py2app

🧩1. py2app 설치하기

pip로 설치하기

  • 터미널 창에 다음 명령어를 입력합니다. 
  • py2app 가 설치되고, 최신 릴리즈로 업데이트 됩니다.
sudo pip install -U py2app

🧩2. 설치관리자 setup.py 생성

py2applet 스크립트로 응용프로그램 생성을 위한 setup.py 를 만듭니다.

  • setup.py 파일은 py 파일을 검사하고, 필요한 모듈을 포함시켜 build 하는 기능을 합니다. 
  • 아이콘이나 데이터 파일이 필요하다면 옵션값에 넣어 줍니다.
    • 아이콘 파일은 확장자가 .icns 여야하며, --iconfile 파일명.icns 형태로 붙여줍니다.
      • 온라인에서 무료로 이미지 파일을 icns 로 변환가능합니다. 👍 anyconv
    • 특정 폴더를 포함해야 한다면, --packages 폴더경로 형태로 붙여줍니다.
py2applet --make-setup MyApplication.py
#출력된 값 Wrote setup.py

🧩3. build, dist 디렉토리 삭제

clean 패키징을 위해 기존 파일/폴더를 제거합니다.

  • 필요한 파일은 백업 후 진행하세요. 터미널에 다음 명령을 넣습니다. 
rm -rf build dist

🧩4. 테스트를 위해 alias mode로 패키징 

Alias mode (-A 또는 --alias option) 는 파일과 폴더를 포함하지 않습니다.

  • 테스트 빌드를 위해 -A 또는 --alias 옵션을 붙여서 실행합니다.
python setup.py py2app -A
  • 빌드가 완료되면 build 와 dist 폴더가 생성됩니다. dist 폴더에 MyApplication. app 파일이 생성 되어 있습니다.
  • 테스트 빌드의 경우 응응프로그램을 실행할 때  -A 또는 --alias 옵션을 붙여주어야 합니다.
  • 터미널 창에 open -a 폴더/파일명 을 입력합니다.
open -a dist/MyApplication.app
  • 콘솔 로그는 아래 명령어로 확인가능합니다.
open -a Console

🧩5. 배포버전 패키징

-A 또는 --alias 옵션 없이 실행합니다.

  • 최종 배포본 패키징을 하기 전에 다시 한번 build, dist 폴더를 제거합니다. 
rm -rf build dist
  • 배포본을 패키징합니다. dist 폴더에 소스가 모두 패키징 된 실행파일이 생성되어 있습니다.
python setup.py py2app


추가 참고 자료

py2app - Create standalone Mac OS X applications with Python 자료를 참고했습니다.

댓글 쓰기

0 댓글