例としてCentOSを使用してx64システムにPython Image Library(PIL)をインストールする

開発者が多くのpythonとdjangoを必要とする場合、同じホスト上で異なるバージョンが助けになります

virtualenv ...



しかし、その後、あなたはピップを介してあなたの手で各Pythonの追加モジュールをインストールする必要があり



そして、ここには微妙な違いがあります。 たとえば、PILライブラリ



完全にインストールされていますが、使用しようとすると、このような優れたエラーメッセージが生成されます



decoder jpeg not available







問題は、PILをビルドするとき、ライブラリがjpeg、zlib、tiff、freetypeで動作できないことです。これは、この例では/ usr / lib64にあり、PILでは/ usr / local / libのみを参照するように記述されているためです。





この問題を解決する差分は次のとおりです。



 *** setup.py.orig 2012-12-01 16:11:49.000000000 +0400 --- setup.py 2012-12-01 16:12:15.000000000 +0400 *************** *** 147,152 **** --- 147,154 ---- add_directory(library_dirs, "/opt/local/lib") add_directory(include_dirs, "/opt/local/include") + + add_directory(library_dirs, "/usr/lib64") + add_directory(library_dirs, "/usr/lib") add_directory(library_dirs, "/usr/local/lib") # FIXME: check /opt/stuff directories here?
      
      







最後に、CentOSのインストール例:

必要なバージョンのpythonおよびpython-develが必要な場所に既にインストールされていることが理解されます

仮想環境。



 yum install libjpeg libjpeg-devel zlib zlib-devel libtiff libtiff-devel freetype freetype-devel wget http://effbot.org/downloads/Imaging-1.1.7.tar.gz tar -zxvf Imaging-1.1.7.tar.gz cd Imaging-1.1.7
      
      







ここで、setup.pyにパッチを適用し、必要な仮想環境で続行します。



 python setup.py build --force python setup.py install
      
      






All Articles