Debian etch に python2.5 用の pygresql をインストール

タイトルまま。python2.4 用にはその名も python-pygresql というパッケージがあり (etch の標準が 2.4)、パッケージインストールで瞬殺なのですが、python 2.5 でも pygresql を使いたい場合は手動でインストール。以下メモ。基本の流れはここの通りなのですが。少し下準備が必要。

# apt-get install python2.5-dev
# export PATH=${PGHOME}/bin:${PATH}

python2.5-dev でヘッダファイルを入れておく + PostgreSQL の install path を設定しておく、とこの二点をしていないと、build の際に

  • 「Exception: pg_config tool is not available.」 やら
  • error: invalid Python installation: unable to open /usr/include/python2.5/pyconfig.h (No such file or directory) 」やら

言われます。ここまですれば後は手順どおり。

# wget ftp://ftp.pygresql.org/pub/distrib/PyGreSQL.tgz
# tar zxvf PyGreSQL.tgz
# cd PyGreSQL-4.0/
# python2.5 setup.py build
# python2.5 setup.py install

動かす時にも少し注意。${PGHOME}/bin 以下の pg_config で build した場合、LD_LIBRARY_PATH に、${PGHOME}/lib 通しておく必要あり。

でないと、「ImportError: libpq.so.5: cannot open shared object file: No such file or directory」とか言われます。なので以下のようにすること。

# export LD_LIBRARY_PATH=${PGHOME}/lib:${LD_LIBRARY_PATH}
# python2.5
>>> import pgdb
>>>

簡単に、/usr/lib/python2.5/site-packages/pygresql.pth に /usr/share/pycentral/python-pygresql/site-packages/ と書いて置けば終わりだろう、と思っていたら、_pg.so という曲者のおかげで結局一からインストールすることに。うーん、もうちょっと上手い事でけへんかったかなー。