py2exe 를 사용하여 실행 파일을 만드는데, 실행 파일 하나만 나오게 할 수 없나요?

198 views
Skip to first unread message

하비

unread,
Feb 24, 2011, 7:55:26 AM2/24/11
to Python 3 질문 게시판
지금..
Python 2.6으로 소스를 만드록,
py2exe 를 돌려서 실행 파일을 만들려고 하는데,
실행 파일 외에 다른 pyd파일과 python26.dll 이 생깁니다.
하나로 만들 수 없는것 인지요 ?
인터넷에 방법이 있긴 한데, 따라서 했을때 계속 python26.dll이 생깁니다.
어떻게 해야 할까요


내용은 다음과 같습니다.

< setup.py >

from distutils.core import setup
import py2exe

excludes = [
"pywin",
"pywin.debugger",
"pywin.debugger.dbgcon",
"pywin.dialogs",
"pywin.dialogs.list",
"win32com.server",
]

options = {
"bundle_files": 1,
"compressed" : 1,
"excludes" : excludes,
"dll_excludes": ["python26.dll","w9xpopen.exe"]
}

setup(
option = {'py2exe': options },
windows = [{'script': "ImgOrg.py"}],
zipfile = None,
)


그리고 생성할때는
python.exe setup.py py2exe

라고 쳐서 실행 파일을 만듭니다.

그럼 답변 주세요.

평면우주

unread,
Mar 1, 2011, 7:39:07 AM3/1/11
to Python 3 질문 게시판
안녕하세요.

결론부터 말씀 드리면 py2exe만으론 하나의 실행 파일만 나오게 하는 방법은 없는 것 같습니다.

py2exe를 통해서 실행 파일을 만들면

myprog.exe, python??.dll, library.zip, *.pyd, w9xpopen.exe

파일들이 생기는데 (옵션, 파이썬 스크립트 내용에 따라서 생성되지 않는 파일도 있습니다.)

프로그램이 실행되기 위해선 모든 파일이 다 필요합니다. 자세한 내용은 아래 URL을 참고 하시기 바랍니다.

http://www.py2exe.org/index.cgi/FAQ

개인적인 추측은 Python License 때문에 이렇게 처리한게 아닐까? 생각합니다.

하지만 py2exe.org 사이트에서는 NSIS(Nullsoft Scriptable Install System,
http://nsis.sourceforge.net/Main_Page )를 이용해서
하나의 파일로 압축하는 Tip을 제공하는데요. NSIS는 py2exe를 통해서 생성된 파일을 하나의 파일로 묶어주는 역활을 합니
다.
즉 위에서 생성된 파일을 하나의 exe로 압축하고, exe를 실행 시킬 때
temporary 디렉토리에 압축을 풀고 실행파일을 실행시켜주는 역할을 합니다.

자세한 방법은 아래 URL을 참고 하시기 바랍니다.

http://www.py2exe.org/index.cgi/SingleFileExecutable

감사합니다.

Reply all
Reply to author
Forward
0 new messages