sphinxcontrib-blockdiagで”ImportError: The _imagingft C module is not installed"

no-site-packagesのvirturalenv環境でsphinxのドキュメントを書こうとしていた.
sphinxcontrib-blockdiagをpipでインストールしてmake htmlをしたところエラーになった。原因は以下。

  File "/home/podhmo/.virtualenvs/altair/local/lib/python2.7/site-packages/PIL/ImageFont.py", line 34, in __getattr__
    raise ImportError("The _imagingft C module is not installed")

原因

PILの問題。
依存しているzlibなどが有効になっていなかった。

    --------------------------------------------------------------------
    PIL 1.1.7 SETUP SUMMARY
    --------------------------------------------------------------------
    version       1.1.7
    platform      linux2 2.7.2+ (default, Oct  4 2011, 20:03:08)
                  [GCC 4.6.1]
    --------------------------------------------------------------------
    --- TKINTER support available
    *** JPEG support not available
    *** ZLIB (PNG/ZIP) support not available
    *** FREETYPE2 support not available
    *** LITTLECMS support not available
    --------------------------------------------------------------------

対応

リンクを貼って、PILインストールの時に見つけられるようにする。そして再度PILをインストール

sudo ln -s /usr/lib/i386-linux-gnu/libz.so /usr/lib/
sudo ln -s /usr/lib/i386-linux-gnu/libfreetype.so /usr/lib/
sudo ln -s /usr/lib/i386-linux-gnu/libjpeg.so /usr/lib/

pip install pil

今度は認識してる。

    --------------------------------------------------------------------
    PIL 1.1.7 SETUP SUMMARY
    --------------------------------------------------------------------
    version       1.1.7
    platform      linux2 2.7.2+ (default, Oct  4 2011, 20:03:08)
                  [GCC 4.6.1]
    --------------------------------------------------------------------
    --- TKINTER support available
    --- JPEG support available
    --- ZLIB (PNG/ZIP) support available
    --- FREETYPE2 support available
    *** LITTLECMS support not available
    --------------------------------------------------------------------