2

I installed Ruby on Rails on my mac today along with Gems and MYsql. I'm trying to follow the lynda.com tutorial and I've run into a brick wall. When I try to run the rails server it doesnt load WEBrick for some reason. This is the error I get:

/Library/Ruby/Gems/1.8/gems/railties-3.0.5/lib/rails/script_rails_loader.rb:11: warning: Insecure world writable dir /usr/local in PATH, mode 040777
/Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:136: warning: Insecure world writable dir /usr/local in PATH, mode 040777
/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle: dlopen(/Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle, 9): Library not loaded: libmysqlclient.18.dylib (LoadError)
  Referenced from: /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
  Reason: image not found - /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2/mysql2.bundle
    from /Library/Ruby/Gems/1.8/gems/mysql2-0.2.6/lib/mysql2.rb:7
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:68:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:68:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:66:in `each'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:66:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:55:in `each'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:55:in `require'
    from /Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler.rb:120:in `require'
    from /Users/nutanpatel/Sites/simple_cms/config/application.rb:7
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.5/lib/rails/commands.rb:28:in `require'
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.5/lib/rails/commands.rb:28
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.5/lib/rails/commands.rb:27:in `tap'
    from /Library/Ruby/Gems/1.8/gems/railties-3.0.5/lib/rails/commands.rb:27
    from script/rails:6:in `require'
    from script/rails:6

Any ideas on what I could do? Please help - I'm stuck!

I did rails -v and I'm on 3.0.5:

rails -v
/Library/Ruby/Gems/1.8/gems/railties-3.0.5/lib/rails/script_rails_loader.rb:11: warning: Insecure world writable dir /usr/local in PATH, mode 040777
/Library/Ruby/Gems/1.8/gems/bundler-1.0.10/lib/bundler/runtime.rb:136: warning: Insecure world writable dir /usr/local in PATH, mode 040777
Rails 3.0.5

BTW: I tried to go and do this sudo chmod go-w /usr/local/bin but this did not resolve anything. Reason I did this was because of: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777

4

5 回答 5

1

忘记warning: Insecure world writable dir错误,这只是来自 Bundler 的警告,与阻止 Rails 启动的错误无关。

该错误是由于 Mysql2 gem 未正确加载造成的。我有同样的问题。基本上,您需要 mysql 源文件才能正确编译 gem。我通过安装 Homebrew 解决了这个问题,然后用 Homebrew 安装了 mysql,然后Bundle install再次运行。

尝试这个:

  1. 安装自制软件
  2. 用hombrew安装mysql:brew install mysql在终端中
  3. 删除Gemfile.lockRails 应用程序中的文件
  4. 再次运行“捆绑安装”
  5. 尝试使用以下命令启动 Rails:bundle exec rails server

我知道我参加这个聚会有点晚了,但我希望这可能对其他人有所帮助。

于 2012-07-10T11:27:48.930 回答
1

我强烈建议您使用 rvm 安装 ruby​​ 并重试:

OS X 附带的默认 ruby​​ 存在许多问题。安装 RVM 时,您可以轻松获得全新安装的 ruby​​。

请务必仔细阅读安装说明,尤其是关于在.bashrc.

于 2011-03-21T17:02:12.727 回答
1

这是在这里回答的

于 2011-03-22T20:34:10.783 回答
0

You have to set your Gemfile and run bundle install

于 2011-03-19T05:31:41.890 回答
-1

您的 gems 目录似乎确实存在权限问题。尝试解决这个问题:

sudo find /Library/Ruby/Gems/1.8/gems/ -type d -exec chmod 755 '{}' +
于 2011-03-19T11:37:11.237 回答