DBD::mysql はエラーなる場合の解決方法

CPANにてDBD::mysqlを導入する際に発生する下記エラーの対処方法。

mysql_configのエラー

下記のエラーはmysql_config にシンボリックリンクを張って解決できます。

Can't exec "mysql_config": No such file or directory at Makefile.PL line 174.
readline() on closed filehandle PIPE at Makefile.PL line 176.

シンボリックリンクを張って対処する。

ln -s /usr/local/mysql/bin/mysql_config /usr/local/bin/mysql_config

コンパイルエラー

上記エラーを解決したあとに発生するエラー。

Note (probably harmless): No library found for -lmysqlclient

mysql_configを使い情報の収集を行う。

# /usr/local/mysql/bin/mysql_config --libs~
-L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm
# /usr/local/mysql/bin/mysql_config --cflags~
-I/usr/local/mysql/include/mysql

二つのコマンドの出力結果をメモし、CPANでインストール途中だったソースのあるディレクトリに移動。

cd /root/.cpan/build/DBD-mysql-2.9003/

メモしたパスをつなげて、下記のコマンドを実行。

perl Makefile.PL --cflags=-I/usr/local/mysql/include/mysql "--libs=L/usr/local/mysql/lib/mysql -lmysqlclient -lz -lcrypt -lnsl -lm"

Makefileが正常に生成されたことを確認し、コンパイル・インストールを行う。

make
make test
make install

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2007-02-18 (日) 20:38:24 (6446d)