2014-07-09 3 views
3

내 응용 프로그램이 PyQt를 사용하지 않아도 PyInstaller가 Windows DLL 파일을 PyQt에 포함시키는 이유를 파악하려고합니다. 그래서, 어떻게 결정할지를 알고 싶습니다. PyInstaller가 PyQt가 필요하거나 더 일반적으로 내 응용 프로그램의 .py 파일이 완성 된 빌드의 dll 파일로 이어질 것이라고 생각합니다.PyInstaller 분석에서 dll을 트리거하는 가져 오기 결정

나는 현재 윈도우 머신에 pyInstaller 중에 2.1을 사용하여 명령 줄을 다음과 같은 종속 전용 응용 프로그램 짓고 있어요 :

  • NumPy와 ==를 1.8.0
  • numexpr의 == 2.3.1
  • 의 사이 썬 == 0.20.1
  • scipy == 0.13.3
  • scikit 화상 == 0.9.3
  • 테이블 == 3.1.1
  • ,691,363,210
  • 스핑크스 == 1.2.1
  • pylint의 == 1.1.0
  • pytest의 == 2.5.2
  • pytest-COV의 == 1.6
  • rst2pdf의 == 0.93.dev
  • 라인 프로파일 == 1.0b3
  • ipython의 == 2.1.0

나는 이들의 엄격 IPython을 제외하고 PyQt는을 필요로 생각하지 않습니다. 그러나, IPython이 PyQt를 실제로 런타임에 임포트하는지 아닌지는 잘 모르겠습니다. 메인 IPython/ .py에서 추적하기 위해 많은 수입이있었습니다.

나는 PyQt4를 분석 제외에 추가하기 위해 내 PyInstaller 사양 파일을 수동으로 편집했습니다. 이것은 정상적으로 작동하는 것처럼 보이지만 빌드 할 때마다 수동으로이 스펙 파일을 편집하고 싶지 않습니다. PyQt4가 어쨌든 인 이유를 알고 싶습니다.

또한 PyQt4를 포함하면 반드시 을 해칠 필요는 없지만 최종 배포 디렉토리를 보다 훨씬 크게 만들 수 있습니다.

+0

동일한 문제가 있습니다. 이것에 대한 답을 찾았습니까? – Godsmith

+1

아니, 아직 그것을 결코 알아 내지 못했습니다. 내 최고의 추측은 pyinstaller가 sys.path 또는 무엇인가를 다 사용하고 있었다는 것입니다. 너는 어떤 이론이 있니? –

+0

답변 해 주셔서 감사합니다! Anaconda가 우연히 설치 되었습니까? 내 컴퓨터에 exe를 빌드하면 관련 패키지가 포함되지만 Anaconda가 설치된 동료 컴퓨터에는이 문제가 발생합니다. 그래도 이유는 설명하지 못합니다. 내가 Pyinstaller 사람들로부터 도움을받을 수 있는지 알게 될 시간이 있으면 매우 유용합니다. – Godsmith

답변

0

--log-level DEBUG 인수를 사용하여 pyinstaller를 실행하고 build\<exe_name>\xref-<exe_name_>.html 파일을보고 모든 가져 오기의 세부보기, 포함 할 항목 등을 볼 수 있습니다.

Pyinstaller 3.3 이상을 실행하는 경우이 파일은 로그 수준에 관계없이 항상 기록됩니다. Pyinstaller 3.3 release notes

관련 문제