
1. Snow Leopardでのデフォルト環境確認
$ ruby -v ruby 1.8.7 (2008-08-11 patchlevel 72) [universal-darwin10.0] $ gem -v 1.3.1 $ rails -v Rails 2.2.2
2. mysql インストール
http://dev.mysql.com/downloads/mysql/5.1.html#macosx-dmg こちらから Mac OS X 10.5 (x86_64) をダウンロード。ディスクイメージを開いたら、デフォルトのオプションのまま、まず「mysql-5.1.38-osx10.5-x86_64.pkg」をインストール。次に、同じくデフォルトオプションのまま「MySQLStartupItem.pkg」をインストールし、さらに「MySQL.prefPane」をダブルクリック
3. mysql 操作
$ /usr/local/mysql/bin/mysql -u root -p Enter password:
mysql> create database mysqldemo default character set utf8;
mysql> grant all privileges on mysqldemo.* to
testuser@localhost identified by 'password';
4. gem install mysql
$ sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config
(以下のエラーが発生した場合はXcodeをインストールしてください)
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb install mysql — –with-mysql-config=/usr/local/mysql/bin/mysql_config
mkmf.rb can’t find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h
Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
5. rails プロジェクト作成
$ rails -d mysql mysqldemo
database.yml ファイル編集
development:
adapter: mysql
encoding: utf8
database: mysqldemo
pool: 5
username: testuser
password: password
socket: /tmp/mysql.sock
6. scaffold 作成
$ script/generate scaffold user email:string name:string age:integer $ rake db:migrate
7. サーバー起動して確認
$ script/server
はじめまして、MacでRuby on Rails + Mysqlをしたくて、ここにたどり着きました。
4. gem install mysql
$ sudo env ARCHFLAGS=”-arch x86_64″ gem install mysql –
–with-mysql-config=/usr/local/mysql/bin/mysql_config
のところで、
エラーになってしまい、実行できません。(すいませんいまエラーを確認できる状況でないので、メッセージを添付できません)
なにかあらかじめやっておく設定が必要なのでしょうか。
RubyもMySQLも初心者です。
急な質問でで大変申し訳ありませんが、ご回答いただければ幸いです。
初めまして、エラー内容がわからないんで何とも言えないですが、一つ気になるのはmysqlのバージョンです。64ビット用をインストールしたでしょうか?(Mac OS X 10.5 (x86_64) をダウンロード)
わー、ご回答ありがとうございます。
MySQLはmysql-5.1.39-osx10.5-x86_64.dmgをインストールしたので、64ビットかと思います。
エラーをコピーします。お手数ですが、ご意見いただけると助かります。
mainpc:~ kentaro$ sudo env ARCHFLAGS=”-arch x86_64″ gem install mysql — –with-mysql-config=/usr/local/mysql/bin/mysql_config
Building native extensions. This could take a while…
ERROR: Error installing mysql:
ERROR: Failed to build gem native extension.
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb install mysql — –with-mysql-config=/usr/local/mysql/bin/mysql_config
mkmf.rb can’t find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h
Gem files will remain installed in /Library/Ruby/Gems/1.8/gems/mysql-2.8.1 for inspection.
Results logged to /Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
こんばんは、以下のファイルを less コマンドでその内容を見せていただけますか?
/Library/Ruby/Gems/1.8/gems/mysql-2.8.1/ext/mysql_api/gem_make.out
詳細なエラーメッセージはこのファイルに書かれてると思いますので
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby extconf.rb install mysql — –with-mysql-config=/usr/local/mysql/bin/mysql_config
mkmf.rb can’t find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/ruby.h
gem_make.out (END)
ですね。
同じでリレクトリに
extconf.rb
mysql.c
というファイルもあります。
お手数おかけします。申し訳ありません。
自分でも引き続きしらべているので、何か分かりましたらポストします。
このページを見る限り特別な事をしなくてもよいのかなと、かってに思ってしまっているのも原因かなと。Mac暦も今年の6月からなので、そこら辺りで、Macの習慣というか、環境の構築方法などがまだよくわかってなかったりもします。
Linuxの場合は別に ruby-devel をインストール必要ありますが、SnowLeopardではその必要ありません。自分も最初は32ビット用をインストールしてていろいろ苦労しました。
勘で思ったのがmysqlのバージョンの問題かと思います。試しに、以下のURLから5.1.38をインストールしてみてください。(5.1.39をアンインストールする必要があります)
http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.38-osx10.5-x86_64.tar.gz/from/pick
上記のアーカイブ(バイナリ)をインストールしてみましたが、同じエラーになってしまいますね。
もう少し、自分で調べてみます。このページがすごく分かりやすかったので、つい甘えてしまいました。
お忙しい所ありがとうございました。
解決しましたら、またポストさせていただきます。
それではありがとうございました。
そうなんでしたか、役に立てずすみません…
なんか進展ありましたらぜひお願いします。
Xcodeをインストールしましたら、できましたー\(^o^)/
Xcodeって統合開発環境かと思ってインストールしていませんでした。
お騒がせしました。ホント申し訳ありません><
でも、よいブログに巡り会えたのでちょくちょくのぞかせていただきます。
本当にありがとうございました。
それでは。
なるほど!おめでとうございます!
僕は趣味でiPhoneアプリの開発をやってるため始めからXcodeをインストールしたのでそんな問題に遭遇しませんでしたね、記事に追加しておきます。
情報ありがとうございました。今後ともよろしくお願いします。(ちなみにTwitterもフォローしちゃいました。)