目次

2009年1月14日水曜日

(続) ROR データベース作成のエラー

昨日の続きです。
どうやら、rake db:migrateは失敗に終わっていたようです。
引き続きOくんの協力の元、MySQLと格闘しました。

前回に引き続き、mysql gemをインストールした後

$ cd /Library/Ruby/Gems/1.8/gems/mysql-2.7


$ ls
すると


COPYING README.html lib mysql.c mysql.o
COPYING.ja README_ja.html mkmf.log mysql.c.in test.rb
Makefile extconf.rb mysql.bundle mysql.gemspec tommy.css



確認すると、ちゃんと入ってる事が分かります。

もう一回rake db

すると


rake aborted!
dlopen(/opt/local/lib/ruby/site_ruby/1.8/i686-darwin9/mysql.bundle, 9): Library not loaded: /usr/local/mysql/lib/mysql/libmysqlclient.15.dylib
Referenced from: /opt/local/lib/ruby/site_ruby/1.8/i686-darwin9/mysql.bundle
Reason: image not found - /opt/local/lib/ruby/site_ruby/1.8/i686-darwin9/mysql.bundle


やっぱり出来ない、、、。

Library not loaded: /usr/local/mysql/lib/mysql/libmysqlclient.15.dylib

ここが問題みたい。

Oくんに聞いてみた所、シンボリックリンクを張ることになった。


$ cd /Library/Ruby/Gems/1.8/gems/mysql-2.7
$ sudo ruby extconf.rb --with-mysql-config=/usr/local/mysql/bin/mysql_config



すると


Password:
checking for mysql_ssl_set()... no
checking for mysql.h... yes
creating Makefile


こんな結果がかえってくる。

$ sudo make



gcc -I. -I. -I/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/universal-darwin9.0 -I. -DHAVE_MYSQL_H -I/usr/local/mysql/include -g -Os -arch i386 -fno-common -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DIGNORE_SIGHUP_SIGQUIT -DDONT_DECLARE_CXA_PURE_VIRTUAL -fno-common -arch ppc -arch i386 -Os -pipe -fno-common -c mysql.c
cc -arch ppc -arch i386 -pipe -bundle -undefined dynamic_lookup -o mysql.bundle mysql.o -L"." -L"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib" -L. -arch ppc -arch i386 -lruby -L/usr/local/mysql/lib -lmysqlclient -lz -lm -lmygcc -lpthread -ldl -lm
ld warning: in /usr/local/mysql/lib/libmysqlclient.dylib, file is not of required architecture
ld warning: in /usr/local/mysql/lib/libmygcc.a, file is not of required architecture
dhcp11:mysql-2.7 suzukiyasuko$ sudo make install
/usr/bin/install -c -m 0755 mysql.bundle /Library/Ruby/Site/1.8/universal-darwin9.0



これでrake db:migrateすると、、、、

できました〜〜〜〜〜!!!!!!!
Oくん、本当にありがとうございました。


それから、Oくんと私のやり取りの中で、MySqlで役立つコマンドが出て来たので、抜粋します。自分のためのメモ書き。


select * from (テーブル名);
意味は
テーブルから * (全てのレコード)を表示する


あとはよく使うのは
desc (テーブル名)
これはテーブルの型を確認するコマンド

0 件のコメント: