自分のブログに行き当たる、というのは、とてもガッカリする。
地球上の誰も困っていないのかぁ〜、という訳ではなくて、勿論、検索キーワードが悪いのだろうけど。
Movable Typeでmysqlを使っているから、DBD::mysqlモジュールは必須、なのだが、4.013がうまく導入できない。
前のバージョン(4.011や4.012)も同じように導入できなくなっていたっ
# Failed test ‘use DBD::mysql;’
# at t/00base.t line 21.
# Tried to use ‘DBD::mysql’.
# Error: Can’t load ‘/Users/DBD-mysql-4.013/blib/arch/auto/DBD/mysql/mysql.bundle’ for module DBD::mysql: dlopen(/Users/DBD-mysql-4.013/blib/arch/auto/DBD/mysql/mysql.bundle, 2): Symbol not found: _is_prefix
# Referenced from: /Users/DBD-mysql-4.013/blib/arch/auto/DBD/mysql/mysql.bundle
# Expected in: dynamic lookup
# at (eval 7) line 2
# Compilation failed in require at (eval 7) line 2.
# BEGIN failed–compilation aborted at (eval 7) line 2.
FAILED–Further testing stopped: Unable to load DBD::mysql
make: *** [test_dynamic] Error 255
とか、
# Failed test ‘use DBD::mysql;’
# at t/00base.t line 21.
# Tried to use ‘DBD::mysql’.
# Error: Can’t load ‘/Users/Shared/install/DBD-mysql-4.012/blib/arch/auto/DBD/mysql/mysql.bundle’ for module DBD::mysql: dlopen(/Users/Shared/install/DBD-mysql-4.012/blib/arch/auto/DBD/mysql/mysql.bundle, 2): Symbol not found: _mysql_get_host_info
# Referenced from: /Users/Shared/install/DBD-mysql-4.012/blib/arch/auto/DBD/mysql/mysql.bundle
# Expected in: dynamic lookup
# at (eval 7) line 2
# Compilation failed in require at (eval 7) line 2.
# BEGIN failed–compilation aborted at (eval 7) line 2.
FAILED–Further testing stopped: Unable to load DBD::mysql
make: *** [test_dynamic] Error 255
なんてメッセージがでてしまう。
をキーワードにググったのだ、な。で、ここ、に書いてあって、がっかり。
どうも、32bitアプリケーションか、64bitアプリケーションか、という問題らしい。
ふむ。
それと、perl Makefile.PLに渡す引数も変わっているようだ。
基本的に、mysql_configの出力に従ってくれるみたいで、これはこれで有り難い。
残りの引数として、testuserやtestpassword、念のためにtestsocket、を指定すればいいのだろう、ね。
自宅サーバの場合、Leopardに元々入っているphp(5.2.10)と共にmysql(5.0.82)を利用している、し、ライブラリーやincludeファイルは自分でダウンロードしたものども(mysql-5.0.86-osx10.5-x86のそれら)を使ってるから、mysql_configの場所が異なる。
perl Makefile.PL \
–testhost=127.0.0.1 –mysql_config=/usr/local/mysql/bin/mysql_config \
–testsocket=/var/mysql/mysql.sock \
–testuser=sdewe –testpassword=adfed
こんな感じ。
別の(職場)サーバでは、
mysql-5.1.39-osx10.5-x86_64
や、
mysql-5.1.39-osx10.5-powerpc-64bit
なんてのを導入して喜んでいたけど、DBD::mysqlを導入するために、それぞれ、
mysql-5.1.39-osx10.5-x86
と、
mysql-5.1.39-osx10.5-powerpc
に戻した。
ふぅ