macportsのperlでDBD::mysqlのインストールが失敗する件について
MacOSX Tigerでmacportsでperlを入れて、CPANでDBD::mysqlを入れようとするとmakeのテストが失敗する件についてのメモ。こちらを参考に解決した。
まあ動かないのも当然のこと、ローカルではmysqlサーバは動いてない。リモートサーバーで動いているmysqlでテストしたいので、サーバー上に適当にcreate database & grant してからMakefile.PLで接続情報を指定してやる:
cd ~/.cpan/build/DBD-mysql-4.006 sudo perl Makefile.PL --cflags="-I/opt/local/include/mysql5/mysql" \ --libs="-L/opt/local/lib -L/opt/local/lib/mysql5/mysql -lmysqlclient -L/opt/local/lib -lz -lm -L/opt/local/lib -lssl -lcrypto" \ --mysql_config="/opt/local/bin/mysql_config5" --testdb="DBNAME" \ --testhost="HOSTNAME" \ --testpassword="PASSWORD" \ --testuser="USER" sudo make sudo make test sudo make install
これで問題なくインストール成功。ちなみに上記はmysqlクライアントをmacportsでインストールした場合なので、公式からdmg->pkgでインストールした場合は--cflags, --libs, --mysql_config
の指定は必要なさげ。