2012-04-19 2 views
5

opencv를 사용하는 Windows에서 파이썬으로 작은 응용 프로그램을 설계했습니다. python/opencv/numpy를 설치하지 않고도 누구나 설치하고 사용할 수 있도록 실행 파일을 만들려고합니다. . .opencv를 사용하여 응용 프로그램의 실행 파일을 만드시겠습니까?

나는 이것을 위해 py2exe를 사용하려고 시도했다.

ImportError: numpy.core.multiarray failed to import 
: 나는 명령 줄을 사용하여 .exe 파일을 실행하려고하면

*** copy dlls *** 
copying C:\Windows\system32\MSVFW32.dll -> 
... 
The following modules appear to be missing 
['cv2.cv'] 

라는 메시지를 참조하십시오 실제로 내가 빌드하는 동안 경고에도 불구하고 .exe 파일을 생성

# creating executable here 
from distutils.core import setup 
import py2exe, sys, os 

sys.argv.append('py2exe') 

setup(
    options = {'py2exe': {'bundle_files': 1}}, 
    console=['facemovie.py'], 
    zipfile = None, 
) 

어떤 생각 나는이 문제를 해결하는 방법 :

내 setup.py 파일은 매우 간단하다? 처음 배포하고 싶습니다. 누락 된 부분이 있습니다.

감사합니다.

답변

2

감사합니다 karlphilip, 당신은 나를 트랙에 넣습니다.

저는 "내 소프트웨어 유틸리티 변경"솔루션을 피하기 위해 py2exe를 사용했습니다.

실제로 opencv가 올바르게 발견되었지만 라이브러리 자체가 numpy 의존성을 가지고 있는데, 이는 발견되지 않았습니다.

그래서 내 작업 솔루션은 마침내 : 옵션 = { 'py2exe에'{ 'bundle_files'1 '포함': 'NumPy와'}}

최종 실행 파일은 꽤 큰하지만, 원활하게 실행 .

저는 소프트웨어가 설치되어 있지 않은 다른 컴퓨터에서 시도하지 않았기 때문에 놀라움이 올 수 있습니다.

감사합니다.

+1

4 년 전에이 질문을했습니다. 내가 궁금한데, 당신은 열려있는 이력서가 설치되어 있지 않은 다른 컴퓨터에서 해봤습니까? 이 경우에 작동하는지 궁금합니다. – Fabio

+0

위와 같아서, 어떻게 작동하는지 알고 싶습니다. – Aphire

+0

오랜 시간이 걸렸으므로 기억이 안납니다. OpenCV가없는 PC에서이 작업을 시도해 본 결과 확신 할 수 있습니다. :) – jlengrand

2

this post에 따르면 py2exe은이 모듈이 ZIP 보관함 안에 필요하다는 것을 감지하지 못합니다. 당신이 문서를 확인해야합니다, 그래서 내가 올바른 구문을 모르는,하지만 당신은 시도 할 수 :

python setup.py py2exe -p cv2 

아니면 다음에 setup.py을 조정할을 시도 할 수 있습니다 :

options = {'py2exe': {'bundle_files': 1, 'packages': 'cv2' } }, 

그리고 경우 당신은 bbfreeze에서 살펴보고, 완전히 다른 무언가를 시도 할 의사가 있습니다

파이썬 스크립트에서 독립 실행 파일을 만들

3

PyInstaller을 사용하는 것이 좋습니다. 필자는 pycrypto와 twisted를 모두 언급 한 프로젝트에 사용했습니다. 그것은 매력처럼 작동했습니다.

0

같은 문제가 발생했습니다. 나는 이미지 파일을 실행 파일이 생성 된 폴더로 옮겨서이 문제를 해결했다. 이것은 py2exe와 pyinstaller 모두에서 작동했다.