VirtualenvまたはBuildoutを使用してPILのインストールに関する問題
-
21-09-2019 - |
質問
easy_installまたはbuildoutを使用してPILをインストールすると、そのような方法でインストールすると、「PILインポート画像から」ではなく「インポート」を実行する必要があります。
ただし、「APT-Get Install Python-Imaging」を実行するか、「PIP -E TEST_PILインストール」を使用する場合、すべて正常に動作します。
Virtualenvを使用してPILをインストールしようとしている例の例は次のとおりです。
# virtualenv --no-site-packages test_pil
# test_pil/bin/easy_install PIL
# test_pil/bin/python
Python 2.5.1 (r251:54863, Feb 6 2009, 19:02:12)
[GCC 4.0.1 (Apple Inc. build 5465)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import PIL
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named PIL
easy_installパックpilを卵に入れて、ピップはそうではありません。 BuildBotで同じことに、卵を使用します。
easy_installまたはbuildoutを使用して、PILを適切にインストールするにはどうすればよいですか?
解決
(著者による)PYPIにパッケージ化されたPILバージョンは、SetUptoolsと互換性があり、したがってEasy_Installableではありません。人々は他の場所でYeasy_installableバージョンを作成しました。現在、Find-Links URLを指定して使用する必要があります pip
良いパッケージを入手してください:
pip install --no-index -f http://dist.plone.org/thirdparty/ -U PIL
使用して pip install
とともに --no-index
PILのPYPI(固定されていない)オリジナルを見つけるリスクを実行することは避けてください。使用する場合 easy_install
, 、修正されたバージョンのソースタルボールへの直接リンクを使用する必要があります。 Easy_installは、頑固に、Find-Links URLでPypiリンクを使用しています。
easy_install http://dist.plone.org/thirdparty/PIL-1.1.7.tar.gz
ビルドアウトにPILを含めるには、同じバージョンピンで卵を指定するか、バージョンセクションを使用します。
[buildout]
parts =
find-links =
http://dist.plone.org/thirdparty/
eggs =
PIL
versions = versions
[versions]
PIL = 1.1.7
2011年3月編集:パッケージングの問題に対処するための修正が融合されています PILの開発ツリー 今、この回避策はすぐに時代遅れになるかもしれません。
2013年2月の編集:使用するだけです まくら そしてそれで終わります。 :-)明らかに元のパッケージが修正されるのを待っていることは報われていません。
他のヒント
使用する 枕:「フレンドリー」ピルフォーク :-)それは提供します:
- 完全なsetuptools互換性
- より速いリリースサイクル
- PILとは異なる画像コードの変更はありません(つまり、すべてのPIL画像コードの変更を追跡することを目的としており、上流に報告せずに独自の変更を行いません。)
- Windowsバイナリ
PILが枕が何をするかを正確に行う場合、フォークは死にます。それが起こるまで、枕があります。
免責事項: :私はフォークの著者であり、枕は主に私の仕事を楽にするために作成されました(他の人もそれを使用しているのを見るのは素晴らしいことです)。
編集: :Pillow 2.0.0は2013年3月15日にリリースされました。Python3のサポートと多くのバグの修正/拡張機能を提供します。私たちはまだ上流のPILで変化を追跡しようとしていますが(残念ながら、あなたがそれをどのように見ているかによって依存します)、枕はPILから離れ始めました。
Ubuntuの場合、PythonバージョンにCヘッダーパッケージをインストールする必要があることがわかりました(2.7)
sudo apt-get install python2.7-dev
その後、 pip install pil
働いた。
Windowsで、次のようにVirtualenvにPILをインストールしました。
.exeを次のように実行して、グローバルPythonサイトパッケージにPILをインストールします。http://www.pythonware.com/products/pil/
次に、「Do It It Your-er-er」として、virtualenvサイトパッケージディレクトリにc: python25 lib site-packagesでpil.pthファイルとpilディレクトリをコピーします。ええ、Pythonはまだ「手を汚す」環境です...