« 12月18日の行動 | メイン | 12月21日の行動 »

2009年12月18日

[技術] SQL::Translator libxml2 MacOSX 10.5.8

【覚え書】

MacBookにSQL::Translator 0.11003 をインストールしようとしたら、以下のようにテストプログラムでエラーが出てしまう。

--------begin
t/43xml-to-db2...................dubious
Test returned status 0 (wstat 10, 0xa)
DIED. FAILED test 1
Failed 1/1 tests, 0.00% okay
t/44-xml-to-db2-array............dubious
Test returned status 0 (wstat 10, 0xa)
DIED. FAILED test 1
Failed 1/1 tests, 0.00% okay
t/45db2-producer.................ok
t/46xml-to-pg....................dubious
Test returned status 0 (wstat 10, 0xa)
DIED. FAILED test 1
Failed 1/1 tests, 0.00% okay
t/47postgres-producer............ok
t/48xml-to-sqlite................dubious
Test returned status 0 (wstat 10, 0xa)
DIED. FAILED tests 1-2
Failed 2/2 tests, 0.00% okay
--------end

で、いろいろ調べてみたら、XMLで表現されたスキーマをそれぞれのデータベースのスキーマに変換してくれる機能のテストで、XMLファイルの読み込みでおかしくなっている。で、内部で実際にXMLを読み込んでいるのは、XML::LibXMLモジュールだ。

で、調べてみると以下のサイトのように、XML::LibXMLで実際に処理を委託しているlibxml2のバージョンが古いと色々と不都合が起きる場合があるらしい。

< a href="http://ripary.com/libxml2_leopoard.html">http://ripary.com/libxml2_leopoard.html

ちなみに私のMacBookにインストールされているlibxml2のバージョンは、2.6.22。SQL::Translator 0.11003が普通にインストールできた、CentOS5.3のlibxml2は、2.6.26だった。

MacBookのlibxml2をバージョンアップすることも考えたが、今回、SQL::TranslatorではXMLを読み込むようなことはしないし、サービスを動かすのはCentOS5.3上なので、XML関連のテストは通過しなかったが、MacBook上では強制インストールして、この問題を回避することにした。

以上、経緯を忘れたときのための覚え書き。

投稿者 nekobara : 2009年12月18日 14:18


コメント