2013-02-07 3 views
3

서버에서 selftest.py를 성공적으로 실행하려고하는데 문제가 있습니다. 내가 파이썬 2.4.4 작업 PIL 1.1.7을 얻기 위해 노력하고PIL selftest.py가 Centos 6 64 비트 오류로 인해 실패합니다. Jpeg 디코더를 사용할 수 없습니다.

(버전이 어울리는 사람인가요?)

은과 같이 미리 형성 될 때 설치 :

# python2.4 setup.py install 
running install 
running build 
running build_py 
running build_ext 
-------------------------------------------------------------------- 
PIL 1.1.7 SETUP SUMMARY 
-------------------------------------------------------------------- 
version  1.1.7 
platform  linux2 2.4.6 (#1, Dec 21 2012, 14:54:30) 
       [GCC 4.4.6 20120305 (Red Hat 4.4.6-4)] 
-------------------------------------------------------------------- 
*** TKINTER support not available 
--- JPEG support available 
--- ZLIB (PNG/ZIP) support available 
--- FREETYPE2 support available 
*** LITTLECMS support not available 
-------------------------------------------------------------------- 
To add a missing option, make sure you have the required 
library, and set the corresponding ROOT variable in the 
setup.py script. 

To check the build, run the selftest.py script. 
running build_scripts 
running install_lib 
running install_scripts 
changing mode of /usr/local/bin/pilconvert.py to 755 
changing mode of /usr/local/bin/pilprint.py to 755 
changing mode of /usr/local/bin/pilfile.py to 755 
changing mode of /usr/local/bin/pilfont.py to 755 
changing mode of /usr/local/bin/pildriver.py to 755 
creating /usr/local/lib/python2.4/site-packages/PIL.pth 

모든 편리 멋쟁이 보인다. Jpeg 지원이 가능하며 모두 만족합니다. 그러나 selftest.py는 다른 이야기입니다.

# python2.4 /usr/local/src/Imaging-1.1.7/selftest.py 
-------------------------------------------------------------------- 
PIL 1.1.7 TEST SUMMARY rc/Imaging-1.1.7]# yum install libjpeg62-devel zlib1g-devel  libfreetype6-devel liblcms1-develp 
-------------------------------------------------------------------- 
Python modules loaded from ./PIL 
Binary modules loaded from ./PIL 
-------------------------------------------------------------------- 
--- PIL CORE support ok 
*** TKINTER support not installed 
*** JPEG support not installed 
*** ZLIB (PNG/ZIP) support not installed 
--- FREETYPE2 support ok 
*** LITTLECMS support not installed 
-------------------------------------------------------------------- 
Running selftest: 
***************************************************************** 
Failure in example: 
try: 
    _info(Image.open(os.path.join(ROOT, "Images/lena.jpg"))) 
except IOError, v: 
    print v 
from line #24 of selftest.testimage 
Expected: ('JPEG', 'RGB', (128, 128)) 
Got: decoder jpeg not available 
1 items had failures: 
    1 of 57 in selftest.testimage 
    ***Test Failed*** 1 failures. 
    *** 1 tests of 57 failed. 

나는 두려워하는 Jpeg 디코더를 사용할 수 없습니다.

다양한 시도를했습니다. 내가 작동하지 않았던 usr/lib64를 가리 키도록 설정을 변경했습니다. libjpeg.so 파일을 가리 키도록 usr/lib에서 심볼릭 링크를 만들었는데, 그 또한 작동하지 않았습니다. 나는 우리 서버 호스팅 장소의 기술 담당자들과 앞뒤로 갔다. 그들은이 문제를 이해하지 못하고 벽과 이야기하는 것과 같다. 나는 정말로 붙어있다. 내가 시도하지 않은 유일한 방법은 픽처 인 픽처 (PiP)이지만 그 방법을 정확하게 알지 못하기 때문에 시도하지 않았습니다. 그래서 저는 그것을 피하고 싶습니다.

호환성 문제가 있거나 설정이 올바르지 않습니까?

도움 감사합니다.

--UPDATE--

다시이 문제에 내가를 CentOS 5 &을 테스트 한 요즘 작업 6 32 비트 및 모든 매력으로 설치하지만 64 비트 나는 아직도 문제가 있습니다.

python2.6이 아닌 syscftest와 같은 것으로 보이지만 python2.4에서는 그렇지 않습니다. Pil 1.1.7은 2.4.4와 호환되지만 64 비트 라이브러리에는 문제가 있다고 생각합니다. 솔루션 검색 중.

+0

"(버전이 호환 되나요?)"[PIL Homepage] (http://www.pythonware.com/products/pil/)를 보면 2.4 용 다운로드 링크가 있습니다. 설치 한 버전입니까? 편집 : 죄송합니다, 그건 창문이에요. 적어도 2.4에서 실행하는 것이 가능하다는 것을 나타냅니다. – Kevin

답변

0

광범위한 테스트를 거친 후에는 불가능합니다.

나는 그것을 할 수 있다고 확신하지만, 서버/시스템의 안정성을 유지하기가 어려울 정도로 집중적으로 처리해야한다.

문제는 실제로 64 비트 시스템에 있습니다. Python-Imagining은 파이썬 2.4가 32 비트로 컴파일 된 경우 파이썬 2.4에서 작동합니다. 그러나 Python-2.4를 32 비트로 컴파일하더라도 CentOS의 모든 것이 64 아치를 위해 빌드되기 때문에 라이브러리와 함께 힘든 시간을 보냅니다. 그리고 추가 라이브러리를 얻는 것은 repos가 작동시키기 위해 필요한 구조를 포함하지 않기 때문에 성가신 일입니다. 그것은 단지 성가신 일입니다. 서클에서 사냥을하는 것은 불가능합니다. 그런 절뚝 거리는 시스템을 지원하려는 데 낭비되는 시간은 낭비됩니다. 시스템을 위험에 빠뜨릴 수도 있습니다.

아니요, 64 비트 시스템에 Python 2.4 용 PIL을 설치할 수 없습니다.내 경우

0

우리는

*** TKINTER support not available 
*** JPEG support not available 
--- ZLIB (PNG/ZIP) support available 
*** FREETYPE2 support not available 
*** LITTLECMS support not available 

그래서 우리는 다음과 같은 사용 PIL (CentOS는 6, 64)의 모든 라이브러리는 지원이 없었 :

yum install freetype freetype-devel libpng libpng-devel libjpeg libjpeg-devel 

그리고 지금 우리가

*** TKINTER support not available 
--- JPEG support available 
--- ZLIB (PNG/ZIP) support available 
--- FREETYPE2 support available 
*** LITTLECMS support not available 
+0

PIL 셀프 테스트를 수행하는 데 사용한 Python 버전은 무엇입니까? 그건 당연히 64 비트에서 작동하도록 PIL을 얻을 수 있지만 64 비트에서 Python 2.4로 작동하도록 PIL을 얻을 수 있습니까? – Mallow

+1

미안하지만, 2.4를 사용하는 것은 우리에게는 적합하지 않습니다. 그래서 어쩌면 그게 포인트입니다. – profuel

0

3 년 후, 나도 알아,하지만 이것은 잘 작동 할 수 있습니다! 표준 빌드 프로세스 /usr/lib64에 라이브러리를 보이지 않는 것,하지만 setup.py build을 실행할 때 당신은 라이브러리 경로를 지정할 수 없습니다, 그래서 당신은 별도의 단계에서 이후 바이너리를 다시 작성해야합니다

yum install freetype-devel libpng-devel libjpeg-turbo-devel libzip-devel lcms-devel 
pip download PIL 
unzip pil-1.1.7.zip 
cd pil-1.1.7 
./setup.py build 
./setup.py build_ext -L /usr/lib64/:/usr/local/lib64 --force 
./setup.py install --prefix /usr/local/python27 --force --skip-build 

이 과학 리눅스에 6.7 소스에서 컴파일 된 Python 2.7을 사용하여 64 비트.

+0

실제로 좋은 타이밍입니다. 기회가 생길 때마다 시도해 보겠습니다. – Mallow