2012-05-04 4 views
0

설치 프로그램 실행 파일에서 설치된 버전의 오류로 인해 Python의 PIL 라이브러리를 빌드했으며 빌드 컴퓨터의 jpg 파일에서 Image() 개체를 만들 수 있습니다. PyInstaller를 사용하는이 Python 응용 프로그램은 JPEG 이미지를 열 수 없습니다. PIL encoder jpeg not available에 설명 된대로 올바르게 PIL을 작성하지 않았습니까? 아니면 다른 점이 있습니까?Windows의 PIL 및 JPEG 라이브러리

업데이트 : 오류 메시지 : "IOError : encoder jpeg not available"입니다.

편집 : 설치 프로그램 실행 파일에서 설치 한 버전의 문제점 (이전 버전이 아닌 경우 1.1.7 및 1.1.6 버전 모두 해당)은 VC90.DebugCRT 라이브러리/어셈블리에 대한 링크입니다. PyInstaller가 내 시스템에서 찾을 수없는 배포판이 아니 었습니다 (버전이 있었지만).

답변

1

설치시 jpeg 인코더/디코더 dll을 포함해야합니다. 그렇지 않으면 아직 설치되지 않은 시스템에서 작동하지 않습니다.

본인 스스로 시도하지는 않았지만 configure 스크립트를 --enable-static과 함께 실행하여 정적 링크를 통해이를 수행 할 수도 있습니다.

+0

+1 감사합니다. jpeg 라이브러리를 PIL과 링크해서는 안되기 때문에 jpeg 라이브러리를 PyInstaller 빌드와 함께 번들링하는 것이 더 합리적입니다.이 대답을 수락하지 않겠습니다. 나는 PyInstaller를위한 configure 스크립트가 있다고 믿지 않으며, PyInstaller의 setup.py는 --enable-static 인수를 취하지 않는다. 아마도 PIL의 configure 스크립트에 --enable-static을 제공하는 것이 좋습니다. – Brian

0

당신은 2 개 선택이 : 소스에서 http://www.pythonware.com/products/pil/

  • 빌드에서

    1. 사용 PIL의 사전 구축 된 바이너리를

      (이전에 JPEG 지원을받을 설치 JPEG 라이브러리가 있습니다, 그것은 창에 쉬운 일이 아닙니다) (문제를 해결하기위한 필요 없음)

    참고 :

    베개의

    Please ensure that pillow, a fork of the the Python Imaging Library (PIL), gets installed with JPEG support. Supported formats are printed when pillow is first installed. Instructions on how to get JPEG support are highly platform specific, but guides for PIL should work for pillow as well. Generally speaking, you need to ensure that libjpeg-dev is installed and found during installation.