Python ebooklib のインストール

epub ファイルを編集する Python パッケージ ebooklibOSX 10.9 にインストールした時のメモ。

基本的には

pip install ebooklib

でインストールできるが、依存関係でインストールされる six, lxml パッケージのうち lxml のインストール時にビルドエラーが出た。

fatal error: 'libxml/xmlversion.h' file not found

調べてみたところ、以下のようなページを発見。libxml2 のファイルが置いてあるフォルダーをインクルードパスに追加してやれば良いようだ。

Installing lxml on Mavericks

Compiling or using libxml using C on OSX - Stack Overflow

xml2-config コマンドでインクルードパスを調べた。

xml2-config --cflags
-I/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2

環境変数にインクルードパスを追加した状態で lxml パッケージを再インストール。

export C_INCLUDE_PATH=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/libxml2:$C_INCLUDE_PATH
pip install lxml

これでインストールは成功した。