Ruby on Rails 3 での mysql 関連エラー

scaffold や rake db:create 時に以下のようなエラーが出ます。
mysql.h is missing. please check your installation of mysql and try again.

■バージョン
-----------------------------------------
$ rpm -qa | grep centos-release
centos-release-notes-5.7-0
centos-release-5-7.el5.centos

$ ruby -v
ruby 1.9.2p136 (2010-12-25 revision 30365) [x86_64-linux]

$ gem -v
1.3.7

$ rails -v
Rails 3.0.9
-----------------------------------------

bundle installでエラー
-----------------------------------------
$ rails new demo -d mysql
$ cd demo
$ bundle install
Fetching source index for http://rubygems.org/
Could not find gem 'mysql-ruby (>= 0) ruby' in any of the gem sources listed in your Gemfile.
-----------------------------------------

以下のようにしてbundle installは成功するようになりましたが、
-----------------------------------------
$ vi Gemfile
gem 'ruby-mysql'

$ vi config/database.yml
production:
host: 127.0.0.1 追記

  または

$ sudo gem install ruby-mysql
Successfully installed ruby-mysql-2.9.4
1 gem installed
(略)

$ vi Gemfile
gem 'ruby-mysql'
-----------------------------------------

今度はscaffoldでエラーとなります。
対処方法をお願いします。

回答の条件
  • 1人10回まで
  • 13歳以上
  • 登録:2011/11/16 05:29:11
  • 終了:2011/11/23 05:30:03

回答(2件)

id:techmedia-think No.1

techmedia-think回答回数46ベストアンサー獲得回数132011/11/17 21:01:39

ポイント50pt

最初のエラーではmysql.hがみつかってないようですが、mysql.hが存在していないということはないでしょうか。存在していない場合は、yum install mysql-develなどでインストールできるかと思います。

また、Rails3からはmysqlのgemがruby-mysqlからmysql2に変更になったかと思うので、それが原因かもしれません。
以下のサイトが参考になるかと思います。
http://d.hatena.ne.jp/deadlight/20100906

他2件のコメントを見る
id:techmedia-think

ちなみにmysql.hは/usr/include/mysql直下に存在しているのでしょうか?

2011/11/17 23:03:56
id:ikazuo

ご指摘のとおり、やはりmysql-develの問題のようです。
mysqlのバージョンをmysql-develも含め、5.0系で揃えるように変更したいと思います。
明日実施の予定です。

2011/11/17 23:58:42
id:kodairabase No.2

kodairabase回答回数661ベストアンサー獲得回数802011/11/22 16:16:52

ポイント50pt

mysql.hが見つからないというエラーです。

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません