주제: Python 으로 만들 어플을 배포용 실행 파일로 만들자.

 

1. 프로그램 선택 시행 착오.

 

 . 기존에 TkInter 을 사용했을때는..  Py2Exe 를 이용해서 실행 파일을 만들었다.

   근데... 이게 PyQt 를 이용했을때는 어떤때는 잘 되다가 어떤때는 에러가 난다.

  그래서 실행 파일을 만드는 다른 툴을 찿기로 했다.

   Py2Exe , cx_Freeze ...  두개를 구글링 하면서 이것 저것 다 해 보았다. 안된다....

 

2. 프로그램 선택과 테스트결과

 

  . pyInstaller ... 검색중에 PyInstaller 이란 프로그램이 있단디.

   일단.. 다운 받고 설치하고 테스트..... 와우 끝내 준다.... 1개의 파일로 만들고... Win7 winXp

   다 돌아 간다.

 

3. 설치 과정.

 

   A. pywin32 설치.

    . pyinstaller 는 PyWin32 나 pypiwin32 가 설치되어 있어야 한다.

    . 만약에 설치되어 있지 않다면 pip로 pyinstaller 설치하면  pypiwin32 가 자동으로 설치된다.

     .pip 에서 pywin 이 자동설치가 안되는 경우 먼저 다음 사이트에서 pywin32 를 다운 받는다.

     http://sourceforge.net/projects/pywin32/files/pywin32/

     에서 Build 219 를 선택.

     난 os를 Win7 64bit 를 쓰지만 호환성때문에 Python3.4 32Bit 를 쓴다.

     그래서 pywin32-219.win32-py3.4.exe 를 다운로드 해서 설치 했다.(설치은 그냥 된다.)

 

 B. pyinstaller 설치

 

  . 기존에 설치했던 버전은 실행파일이 한글로 된폴더에 있으면 에러가 난다.

  . 그래서 새버전을 설치하기로 했다.

 

   방법1

  . pyinstaller 가 업그레이드 되어서 이제는

   pip install pyinstaller  또는

   pip install -U pyinstaller

   로 설치하면 이상없이 설치된다.

 

   방법2

   . 아래사이트에 접속해서

    http://www.pyinstaller.org/

    PyInstaller 3.0 (zip) 을 다운받아 압축을 푼다.

 

    . 다시  CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.

       python setup.py install

 

추가 : pyinstaller 3.2 로 업그레이 하려고 했더니   unicode cp949 코덱 관련 오류가 난다

        그래서 아예 개발자 버전  3.3 으로 설치했다.

       PyInstaller-3.3.dev0+483c819 future-0.16.0

       설치 방법은 아래/

pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip

 

 A. 시행착오

 .  pip install -U pyinstaller 요걸로는 잘 안된다.

    중간에 에러가 난다.( PyWin32 가 설치 안되어서 일수도)

 

  .  http://www.pyinstaller.org 에서 자신의 파이썬 버전과 맞는 것을 다운 받는다.

    내 경우 Python3.4 이므로 하단의 Py3.zip 파일을 다운 받아 압축을 풀었다.

 

   .CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.

     python setup.py install

 ... 헉.... 에러가 난다... console 창의 에러 메세지를 보니... PyWin32 가 설치 되어 있어야한단다.

 

    PyInstaller 를 설치 하기 위해서는 PyWin2가 받드시 설치 되어 있어야 한다.

    ( 아마 , Py2exe 나 cx_Freeze 가 에러난 이유도 이것 PyInw32가 설치 안되어서 인듯.)

 

 B. 설치 성공

 

    . 다시  CMD 창을 열어서 pyinstaller 압축을 푼 폴더로 들어간뒤.

       python setup.py install

     와 에러 없이 잘 설치 된다. 굿......

     다 설치하고 나서야 PyInstaller 설명서 를 찿았다.

 

        http://pythonhosted.org/PyInstaller/#installing-using-pip

 

 

4. 실행 파일 만들기.

   cmd 창을 열어서 내가 만든 소스가 있는 폴더로 이동.

   다음과 같이 입력.

 

pyinstaller --onefile --noconsole --icon=아이콘파일이름.ico 소스파일(내파일이름)

 

내경우 배치파일을 만들었다 (make_exe.bat 내용은 별거 없다 아랫줄. )

 

pyinstaller --noconsole --icon="main.ico" "SvrCheckPs.py"

 

위의 명령처럼 실행하면 소스가 있는 폴더 아래이 build 와 dist 폴더가 생성된다.

 

dist 폴더안에 파일을 배포하면 된다.

 

5. Pyinstaller 옵션.

 

 --vsrsion :현재 설치된 pyinstaller 버젼.

--onefile :한개의 파일로 만듬. 초기로딩 여러개의 파일일때보다 약간 느림.

   1개의 파일로 만들경우 win7/xp는 실행되나

   winows 8.1/10 은 압축을 풀지못한다는 에러 메세지 나오며 실행안됨.

--noconsole : 윈 gui 어플이므로  console 창을 열지 않는다.

--icon=아이콘파일이름:  실행파일의 아이콘이름.

2017/07/05 10:01 2017/07/05 10:01

Trackback Address :: https://youngsam.net/trackback/1884