2012年08月07日

DBD::mysqlがインストールできない

でこける
# cpamn DBD::mysql
dbdimp.h:24:49: error: mysql.h: No such file or directory
dbdimp.h:25:45: error: mysqld_error.h: No such file or directory
dbdimp.h:27:49: error: errmsg.h: No such file or directory
In file included from dbdimp.c:20:
dbdimp.h:159: error: expected specifier-qualifier-list before 'MYSQL'
dbdimp.h:257: error: expected specifier-qualifier-list before 'MYSQL_RES'
In file included from dbdimp.c:20:
dbdimp.h:318: error: expected ')' before '*' token
dbdimp.h:321: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'mysql_st_internal_execute'
dbdimp.h:357: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token
dbdimp.h:363: error: expected declaration specifiers or '...' before 'MYSQL_RES'
dbdimp.c:519: error: expected declaration specifiers or '...' before 'MYSQL'
dbdimp.c: In function 'parse_params':
dbdimp.c:767: warning: implicit declaration of function 'mysql_real_escape_string'
dbdimp.c:767: error: 'sock' undeclared (first use in this function)
dbdimp.c:767: error: (Each undeclared identifier is reported only once
dbdimp.c:767: error: for each function it appears in.)
dbdimp.c: At top level:
・・・続く

ソースからインストールしてみても、こける。
原因は、これ↓
http://perldoc.jp/docs/modules/DBD-mysql-2.1026/DBD/mysql/INSTALL.pod#pod24517
Cコンパイラはいくつかのヘッダ・ファイルを見つけなければなりません。 ヘッダ・ファイルは拡張子.hを持ちます。例えばMySQLヘッダ・ファイルは mysql.h と mysql_version.hです。ほとんどの場合、デフォルトでは ヘッダ・ファイルはインストールされません。例えばWindowsでは MySQLセットアップ・プログラムでのヘッダ・ファイルをインストールするか どうかはインストールのオプションです(Custom Installation)。 Red Hat Linuxでは、RPMアーカイブmysql-devel あるいは MySQL-develを インストールする必要があります。

ヘッダファイルがインストールされていなかった?らしい。

# yum install mysql-devel
を実行して
# cpamn DBD::mysql
で無事インストールできた。
うそついた
ソースからインストールした
# wget http://www.cpan.org/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.021.tar.gz
# gtar zxvf DBD-mysql-4.021.tar.gz
# cd DBD-mysql-4.021
# perl Makefile.PL --testuser テストユーザ名 --testdb テストDB名 --testpassword=テストユーザーのパスワード
# make
# make test
# make install


でオッケー

落ち着いてエラーログをよく読んで、検索すればよかったんですね。
でもうるさかったしね。
posted by onishi at 11:35| Comment(1) | centos | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
お疲れ様です。
mysqlをwgetを使ってインストールしようとしてるのですが、なかなかどのサイトのを試してもエラーになり、こちらの

# yum install mysql-devel
を実行して
# cpamn DBD::mysql
で無事インストールできた。
うそついた
ソースからインストールした
# wget http://www.cpan.org/authors/id/C/CA/CAPTTOFU/DBD-mysql-4.021.tar.gz
# gtar zxvf DBD-mysql-4.021.tar.gz
# cd DBD-mysql-4.021
# perl Makefile.PL --testuser テストユーザ名 --testdb テストDB名 --testpassword=テストユーザーのパスワード


makeの前までは何となくいきました。

でもmakeの前にconfigureはしないんですか?

makeをしたらはじかれました。。。
Posted by せいじ at 2013年05月22日 14:54
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は180日以上新しい記事の投稿がないブログに表示されております。