2011-04-27 3 views
9

명령 줄을 사용하여 py2exe의 최종 dist 디렉토리를 설정할 수 있습니다.py2exe에 대한 빌드 디렉토리를 지정하는 방법이 있습니까?

python setup.py py2exe -d "my/dist/dir" 

그러나 임시 build 디렉토리에 사용할 파일을 설정할 수 없습니다. 나는 근원을 간략하게 살펴 봤지만, 뭔가를 놓치지 않으면 그것을 할 방법이없는 것 같습니다.

답변

8

명령 줄에서 설정할 수있는 옵션은 setup.cfg 파일이나 setup.py 파일을 통해 설정할 수 있습니다.

from distutils.core import setup 
import py2exe 

# equivalent command line with options is: 
# python setup.py py2exe --compressed --bundle-files=2 --dist-dir="my/dist/dir" --dll-excludes="w9xpopen.exe" 
options = {'py2exe': { 
      'compressed':1, 
      'bundle_files': 2, 
      'dist_dir': "my/dist/dir" 
      'dll_excludes': ['w9xpopen.exe'] 
      }} 
setup(console=['myscript.py'], options=options) 

당신은 또한 당신의 setup.py 옆에 setup.cfg을 넣을 수 :

-d

'dist_dir'로 설정의 옵션 키워드 PARAM에 전달 사전에 py2xe의 DICT에 추가 할 수 --dist-dir에 대한 바로 가기입니다 파일 :

[py2exe] 
compressed=1 
bundle_files=2 
dist_dir=my/dist/dir 
dll_excludes=w9xpopen.exe 

빌드 디렉토리 (--build-base가)와 같이 설정 파일 중 하나 (또는 ​​setup.py)에 추가 할 수 있도록 빌드 명령의 옵션입니다 :

[build] 
build_base=my/build/dir 
+0

. 'dist' 디렉토리를 여러분이 제안한대로 지정할 수 있지만,'py2exe' 역시 중첩 된'build' 디렉토리를 사용하여 변경할 수 없습니다. – Casey

+1

빌드 디렉토리 부분을 놓친 :) – lambacck

+0

문제 없습니다. 나는 실제로 py2exe 소스를 파고 들었고 여기에 약간의 수정을 가할 수 있습니다. 내가 여분의 시간을 갖게되면. – Casey

0

케이시와 같은 문제가 있습니다. 우리는 py2exe로 .exe를 생성 할 때 을 준수하고 싶은 빌드 시스템을 가지고 있습니다.

그러나 나는 램박의 대답이 작동한다고 생각하지 않습니다. 'build_base은'py2exe에의 옵션을 선택하지 않습니다

는이 실행 증명하기 : 파이썬 setup.py --help py2exe에

이 py2exe에 대한 모든 옵션을 나열합니다. 'build_base'가 여기에 표시되지 않습니다.

내가 틀릴 수도 py2exe에 0.6.9

를 사용하고 있지만, 누군가가 이 프로젝트를 유지 누구에 패치를 보내야하는 것 같은데. 그것은 소스 포지에 그리고 lambacck의 답변을 명확히하기 위해 2008 년

+1

vostok4의 답변보기, 작동 여부 – ecoe

6

이후 터치되지 않았습니다이 최신 바닐라 py2exe에 작동이 완전히하지만 작동하지 않습니다

options = {'build': {'build_base': 'my/build/dir'}, 
      'py2exe': { 
      'compressed':1, 
      'bundle_files': 2, 
      'dist_dir': "my/dist/dir" 
      'dll_excludes': ['w9xpopen.exe'] 
      }}