2011-07-21 153 views
0

我是一名试图从Lynda.com Ruby on Rails教程学习Rails的新手。我已经安装了Rails 3.0和Ruby Germs 1.8。到目前为止,我已经创建了一个Rails项目,我们正准备访问它。导师说我应该能够在Mac终端输入Ruby On Rails:尝试启动WEBrick时出现错误消息

rails server 

开机其中自带安装使用Rails的WEBrick。

但是,当我这样做时,我得到了下面的错误信息(我无法理解)。 **你知道我能做些什么来让WEBrick工作吗?

注意:我在本地安装了mysql(/ usr/local/mysql/bin/mysql)并且它正在运行。我也安装了MAMP,但它没有运行(我只在PHP应用程序中使用它)。我也想用mysql和使用WEBrick,这样我可以随着教程的工作,但如果有,你能想到的,请一个替代的解决方案也让我知道...

/Library/Ruby/Gems/1.8/gems/mysql2-0.3.2/lib/mysql2/mysql2.bundle: dlopen(/Library/Ruby/Gems/1.8/gems/mysql2-0.3.2/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.18.dylib (LoadError) 
    Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.3.2/lib/mysql2/mysql2.bundle 
    Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql2-0.3.2/lib/mysql2/mysql2.bundle 
    from /Library/Ruby/Gems/1.8/gems/mysql2-0.3.2/lib/mysql2.rb:8 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:68:in `require' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:68:in `require' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:66:in `each' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:66:in `require' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:55:in `each' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler/runtime.rb:55:in `require' 
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.14/lib/bundler.rb:120:in `require' 
    from /Users/michaelmitchell/Sites/simple_cms/config/application.rb:7 
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:28:in `require' 
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:28 
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:27:in `tap' 
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:27 
    from script/rails:6:in `require' 
    from script/rails:6 

UPDATE我试着重新安装这样

sudo gem install mysql2 — –with-mysql-configs=/usr/local/mysql/bin/mysql_config 

错误信息mysql2的

Building native extensions. This could take a while... 
Successfully installed mysql2-0.3.6 
ERROR: Could not find a valid gem '—' (>= 0) in any repository 
ERROR: Could not find a valid gem '–with-mysql-configs=/usr/local/mysql/bin/mysql_config' (>= 0) in any repository 
1 gem installed 
Installing ri documentation for mysql2-0.3.6... 

Enclosing class/module 'mMysql2' for class Client not known 

Enclosing class/module 'mMysql2' for class Result not known 
Installing RDoc documentation for mysql2-0.3.6... 

Enclosing class/module 'mMysql2' for class Client not known 

Enclosing class/module 'mMysql2' for class Result not known 
+1

错误消息抱怨mysql动态库。你有没有在本地安装mysql,因为'mysql2' gem在没有它的情况下无法运行,iirc。 – Frost

+0

你的系统上安装了mysql吗?你在'rails server'之前运行'bundle'吗? – Mischa

+0

我有本地安装的mysql,它正在运行。我应该运行捆绑?该教程没有这样做......我应该吗? – Leahcim

回答

0

尝试了这一点:

cd /Applications/MAMP/Library/lib/mysql/ 
ln -s ibmysqlclient.la ibmysqlclient.a 
ln -s libmysqlclient_r.la libmysqlclient_r.a 
ln -s libndbclient.la libndbclient.a 

sudo gem install mysql2 — –with-mysql-configs=/Applications/MAMP/Library/bin/mysql_config 
+0

你能告诉我它将要做什么以及做什么我需要做后?我需要在运行MAMP之后运行MAMP而不是本地mysql在/ usr/local/mysql/bin/mysql吗? – Leahcim

+0

您的** mysql2 **安装不正确,只需要重新安装它,并将其正确配置指向MAMP MySQL config ** =/Applications/MAMP/Library/bin/mysql_config **。您只需确定mysqld正在运行 – Anatoly

+0

,但为什么我需要将它指向MAMP?我没有使用MAMP(MAMP只用于php应用程序)。我有MySQL安装在这里/ usr/local/mysql/bin/mysql for Rails ... – Leahcim

1

我有同样的问题,上面的评论与你的错误没有关系。什么视频没有让你做的是cd回到simple_cms。您正试图在Sites文件夹中执行rails server命令(即视频离开您的地方),这是不可能的。确保你的光盘备份到simple_cms和做轨道服务器。

相关问题