파이썬은 스크립트 언어이므로 소스 코드를 파이썬 인터프리터로 해석하여 프로그램을 수행하게 된다.
하지만 사용자에게 파이썬으로 만든 프로그램을 배포하여 유효한 프로그램이 되기 위해서는 먼저 파이썬 인터프리터가 사용자의 PC에 설치되어 있어야 하며, 또한 사용자에게 소스를 그대로 배포해야한다는 단점이 존재한다.
일반적인 상업용 프로그램은 거의 모두가 바이너리 형태의 파일로 되어 있다.
파이썬 프로그램을 실행가능한 바이너리 파일(.exe)로 만드는 법을 살펴보기로 한다.
먼저 파이썬 프로그램을 실행파일(.exe)로 만드는 유틸리티인 py2exe 프로그램을 아래의 사이트에서 다운로드 받아서 설치한다.
http://starship.python.net/crew/theller/py2exe/
py2exe를 설치하기 전에 파이썬이 자신의 PC에 먼저 설치되어 있어야 한다.
현재(2004년 11월 8일)까지 최신 버전은 py2exe.0.5.4 이며, 이전 버전에는 0.4.2,와 0.5.3이 있는데. 0.4.2와 0.5 대 버전의 차이점은 setup 스크립트를 작성하는 방법과 디렉토리 구성 및 실행파일의 저장에 관한 규칙들이 많이 바뀌었다.
여기에서는 0.4.2버전과 0.5.3 버전을 이용하여 exe 바이너리 파일로 만드는 방법을 각각 설명하겠다.
<< 0.4.2 버전으로 exe 파일 만들기>>
자 이제 실제 소스를 가지고 실행파일을 만들어 보기로 한다.
아래와 같은 화면에 "HI sams~" 라고 디스플레이하는 아주 간단한 소스를 작성한다.
# test.py
if __name__ == "__main__":
print 'HI sams~'
위의 소스는 콘솔화면에서 디스플레이 하는 간단한 소스이다.
py2exe를 이용해서 위의 test.py를 실행가능한 바이너리 파일로 작성하기 위해서는 아래와 같은 간단한 셋업 파일이 필요하다. 셋업 파일의 이름은 적당하게 짓는다.
# testsetup.py
from distutils.core import setup
import py2exe
setup(name='test', scripts=['testexe.py'])
위의 소스에서 name= 에 해당하는 것은 실행파일의 이름이며, scripts는 바이너리 파일로 만들 소스 이름이다.
testsetup.py가 존재하는 디렉토리에서 커맨드 모드로 다음과 같은 명령을 해보자.
python testsetup.py py2exe --help
이 명령으로 py2exe 의 다양한 옵션을 볼수 있을 것이다.
우리가 만들고자 하는 프로그램은 콘솔용 프로그램이므로 다음과 같은 명령을 이용한다.
python testsetup.py py2exe --console
모든 절차가 다 끝나면 test.py가 있는 디렉토리에 dist라는 디렉토리가 만들어지고, 그 아래에 test라는 디렉토리가 만들어진다. 이 곳에 test.exe가 만들어져 있을 것이다.
만약 test.py가 윈도용 프로그램으로 작성된 경우는
python testsetup.py py2exe --windows 라고 하면된다.
0.4.2 버전에서 실행파일의 생성은 메인 소스가 있는 디렉토리가 "A"라면 아래의 디렉토리에 생성된다.
A/dist/"파일명"
<<0.5 대 버전으로 exe 파일 만들기>>
위에서 예로 든 test.py를 그대로 이용하여 exe 파일로 만든다고 가정하자.
이제는 testsetup.py 파일만 0.5 버전대의 스크립트로 수정하면 된다. 다음과 같다.
# testsetup.py
from distutils.core import setup
import py2exe
setup(
# version = "1.0" # 옵션
# description = "MyTestProg" # 옵션
# name = "Hi Man"
console = ["test.py"], # 콘솔 프로그램으로 생성
# windows = ["test.py"], # 윈도 프로그램으로 생성
)
실행은 다음과 같이 한다.
python testsetup.py py2exe
즉, 0.4.2와 달라진 점은 --console, --windows 와 같은 옵션이 스크립트 내에 포함된 형태로 변했다.
실행파일의 생성은 A/dist 바로 밑에 생성되며 실행에 필요한 라이브러리들이 library.zip 이라는 형태의 압축파일에 저장된다. 즉 프로그램을 배포할 때 실행파일과 함께 library.zip을 함께 배포하도록 해야 한다.
|
Tracked from 월풍도원(月風道院) - Delight on the Simple Life. | 2010/07/29 22:28 | DEL
이미지출처 : en.kioskea.net 파이썬(Py) 파일 윈도우에서 실행하기. (python file to windows executable file! - .py to .exe) If you want to python application in windows without python, you can considering ‘py2exe’. It is easy. Step1. Decide what you want to turns Windows app.. |


