이미지 라이브러리(PIL)에서 에러 “decoder JPEG not available”
조회수 2819회
제 컴퓨터에서는 PIL이 JPEG를 지원하는데도 파일을 업로드하면 이런 에러가 뜹니다. 어떻게 해결해야 하나요?
에러 내용
File "PIL/Image.py", line 375, in _getdecoder
raise IOError("decoder %s not available" % decoder_name)
IOError: decoder jpeg not available
1 답변
-
libjpeg-dev
는 jpeg파일을 pillow(혹은 PIL)을 통해 처리하는데 여기서 문제가 생긴 것 같네요 이 경우에는 pillow/PIL을 다시 설치해야 합니다.pillow를 다시/새로 설치하려면 기존의 pillow를 제거해주세요
pip uninstall PIL(혹은 pillow)
Ubuntu 환경을 기준으로 설명하겠습니다.
- apt로
libjpeg-dev
설치 :sudo apt-get install libjpeg-dev
- pillow 설치 :
pip install --no-cache-dir -I pillow
1의 방법이 통하지 않으면 아키텍처에 따라 다음을 따라한 후 pillow를 재설치해주세요
Ubuntu x64에서)
sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib sudo ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib sudo ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib
Ubuntu 32bit에서)
sudo ln -s /usr/lib/i386-linux-gnu/libjpeg.so /usr/lib/ sudo ln -s /usr/lib/i386-linux-gnu/libfreetype.so.6 /usr/lib/ sudo ln -s /usr/lib/i386-linux-gnu/libz.so /usr/lib/
- apt로
댓글 입력