문제

파이썬 스크립트에서 독립형 .exe를 만들 수있는 방법이 있습니까? py2exe로 생성 된 실행 파일은 pythonxx.dll에서만 실행할 수 있습니다. Python 런타임 라이브러리를 설치할 필요가없는 완전히 독립형 .Exe를 얻고 싶습니다. 연결 문제처럼 보이지만 정적 라이브러리를 사용하여 동적 라이브러리를 사용하여 사용되지 않은 기호를 제거하기 위해 스트립을 적용하는 것이 유용합니다.

아이디어가 있습니까?

감사.

알레산드로

도움이 되었습니까?

해결책

최신 버전의 py2exe에서 이것을 할 수 있습니다 ...
아래 코드와 같은 것을 추가하십시오 setup.py 파일 (키 부분은 'bundle_files': 1)입니다.

설치에 Tkinter 패키지를 포함하려면 '포함'키를 사용하십시오.

distutils.core.setup(
      windows=[
            {'script': 'yourmodule.py',
             'icon_resources': [(1, 'moduleicon.ico')]
            }
      ],
      zipfile=None,
      options={'py2exe':{
                         'includes': ['tkinter'],
                         'bundle_files': 1
                        }
      }
  )

다른 팁

Windows의 동적 링커가 작동하는 방식으로 인해 .pyd 또는 .dll Python 모듈을 사용하는 경우 정적 라이브러리를 사용할 수 없습니다. Windows에로드 된 DLL은 기호 공간을 실행 파일과 자동으로 공유하지 않으므로 Python 기호를 포함하는 별도의 DLL이 필요합니다.

단일 실행 파일을 사용하는 목적이 다운로드/이메일 등을 용이하게하는 경우 Py2exe 출력을 사용하여이를 해결했습니다. 이노 설정. 일부 디렉토리에 삭제할 수있는 실행 파일을 제공하는 대신 잘 작동하는 Windows 응용 프로그램은 설치되지 않은 상태를 제공하고 프로그램 애플릿에 표시/제거 등에 표시되기 때문에 실제로 단일 실행 파일을 갖는 것보다 낫습니다. 이것은 당신을위한 것입니다.

또 다른 솔루션은 Python.dll을 포함하여 Python과 그 안에 설치된 모든 종속성이있는 단일 EXE를 만드는 것입니다. 래퍼에는 약간의 마법이 있지만 작동합니다. 세부 사항은 다음과 같습니다.

http://code.google.com/p/pylunch/downloads/detail?name=pylunch-0.2.pdf

이것은 가장 좋은 방법은 아니지만 .exe 및 .dll 파일과 함께 실행 파일 아카이브를 사용하여 두 번 클릭 할 때 .exe 파일을 실행하도록 설정하는 것을 고려할 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top