web-dev-qa-db-ja.com

LinuxでのPillow(Pythonモジュール)のインストール中に失敗する

Pipを使用してPillow(Pythonモジュール)をインストールしようとしていますが、このエラーが発生します。

ValueError: jpeg is required unless explicitly disabled using --disable-jpeg, aborting

だからエラーが言うように、私は試してみました:

pip install pillow --global-option="--disable-jpeg"

しかしそれは失敗します:

error: option --disable-jpeg not recognized

それに対処する方法がありますか?

150
mchfrnc

@ mfitzpありがとうございます。私の場合(CentOS)、これらのライブラリはyumレポジトリでは利用できませんが、実際には解決策はさらに簡単でした。私がしたこと:

Sudo yum install python-devel
Sudo yum install zlib-devel
Sudo yum install libjpeg-turbo-devel

そして今枕のインストールは正常に終了します。

33
mchfrnc

Pillow here にバグが報告されました。これは、Pillow 3.0.0の時点でlibjpegzlibrequired になったことを示します。

Linux上のPillowの インストール手順 には、これらのパッケージのインストール方法に関するアドバイスがあります。以下のパッケージのすべてがあなたのマシン上で欠けているわけではないことに注意してください(コメントはlibjpeg8-devだけが実際に欠けていることを示唆しています)。

pip/PyPi(枕> 3.4.2)

Pillowの 最新リリース は、PyPi上で wheels - Pythonの新しい標準パッケージ化メカニズムとして利用可能です。これらのビルド済みパッケージには、Pillowを実行できるようにするために必要なすべてのバイナリ依存関係が含まれています。PyPowをPyPiを使用してインストールする場合に使用する必要があります。

ホイールを使用するには、pip>=1.4のバージョンが必要です。以前のバージョン(pip --version)を使用している場合は、以下を使用してpipをアップグレードしてください。

pip install --upgrade pip 

pipがアップグレードされると、pip installはプラットフォーム固有のホイールファイルが利用可能であればデフォルトでそれを使用します。以下のコマンドを使用して、PillowをPyPiで利用可能な最新バージョンにアップグレードしてください。

pip install --upgrade pillow

Ubuntu 12.04 LTSまたはRaspian Wheezy 7.0

Sudo apt-get install libtiff4-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.5-dev tk8.5-dev python-tk

Ubuntu 14.04

Sudo apt-get install libtiff5-dev libjpeg8-dev zlib1g-dev libfreetype6-dev liblcms2-dev libwebp-dev tcl8.6-dev tk8.6-dev python-tk

Ubuntu 18.04

Sudo apt install libjpeg8-dev zlib1g-dev

Fedora 20

libjpeg8-devと同等のFedora 20はlibjpeg-develです。

Sudo yum install libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel

Mac OS X(自作経由)

Homebrew を指定したMac OS Xでは、これを使用して修正できます。

brew install libjpeg zlib

以下を使用してzlibを強制リンクする必要があるかもしれません。

brew link zlib --force

更新2019年4月:Mojaveでは上記は動作しません。次の を実行する必要があります。ピローに関するこのバグレポートからの抜粋

Sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /

2016年7月更新:メインリポジトリにzlibの公式がありません(Homebrewはlzlibをインストールするように促しますが、これは別のライブラリであり、この問題は解決されません)。

is _ dupesリポジトリにある式があります。このリポジトリをタップして通常通りにインストールすることができます。

brew tap homebrew/dupes
brew install zlib

あるいは、以下のように、代わりにzlibを介してxcodeをインストールすることもできます。

xcode-select --install

コメントのフェニックス、Panos Angelopoulou、nelsonvarela、benjaminzおよびKalに感謝します

これらがインストールされた後、ピローのピップインストールは正常に動作するはずです。

293
mfitzp

ラズベリーパイIIでは、私は同じ問題を抱えていた。以下を試した後、私は問題を解決しました。解決策は次のとおりです。

Sudo apt-get update
Sudo apt-get install libjpeg-dev
36
xjfengck

最も速い修正はpipをアップグレードすることです。私のために働きました:

pip install --upgrade pip
12
Aman Yadav

これは私のために働きました。

   `Sudo apt-get install libjpeg-dev`
12
Thomas John
brew install zlib

oS X上では動作しなくなり、代わりにlzlibをインストールするように促します。それをインストールしても役に立ちません。

代わりにXCodeコマンドラインツールをインストールするとzlibがインストールされます。

xcode-select --install
10
Kal

私はValueError: zlib is required unless explicitly disabled using --disable-zlibを持っていました、しかし7.xから8.yにpipをアップグレードすることは問題を解決しました。

だから私は何よりも先にツールを更新しようとするでしょう。

それを使用して行うことができます:

pip install --upgrade pip
6
Brambor

これは私にとってjpegとzlibエラーを解決するのに役立ちました:

C:\Windows\system32>pip3 install pillow --global-option="build_e
xt" --global-option="--disable-zlib" --global-option="--disable-jpeg"
5
B-shan

Libjpegをインストールしたくない場合は、代わりの方法:

CFLAGS="--disable-jpeg" pip install pillow

https://pillow.readthedocs.io/en/3.0.0/installation.html#external-libraries から

2
shangxiao

やってみる

pip install pillow

うまくいかない場合は、

cache by pip install --upgrade pip

それからまた走る

pip install pillow