1

Ruby、Rails、および MySQL はまったくの初心者です。新しいプロジェクトを開始してデフォルト サーバーを開始しようとすると、以下のエラーが表示されます。私は以下をインストールしています:

  • Ruby : ruby​​ 1.8.7 (2008-08-11 パッチレベル 72) [i686-darwin9.8.0]
  • レール: レール (3.0.7)
  • MySql: mysql2 (0.2.7)
  • RubyGems: 1.7.2

エラーは以下です。

$ rails s
/usr/local/lib/ruby/gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle: dlsym(0x251680, Init_mysql2): symbol not found - /usr/local/lib/ruby/gems/1.8/gems/mysql2-0.2.7/lib/mysql2/mysql2.bundle (LoadError)
    from /usr/local/lib/ruby/gems/1.8/gems/mysql2-0.2.7/lib/mysql2.rb:8
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:68:in `require'
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:68:in `require'
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:66:in `each'
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:66:in `require'
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:55:in `each'
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler/runtime.rb:55:in `require'
    from /usr/local/lib/ruby/gems/1.8/gems/bundler-1.0.12/lib/bundler.rb:120:in `require'
    from /Users/nelsonwittwer/Sites/simple_cms/config/application.rb:7
    from /usr/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:28:in `require'
    from /usr/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:28
    from /usr/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:27:in `tap'
    from /usr/local/lib/ruby/gems/1.8/gems/railties-3.0.7/lib/rails/commands.rb:27
    from script/rails:6:in `require'
    from script/rails:6

ここからどこへ行くべきかよくわかりません。あなたの助けがあれば幸いです。ありがとうございました。

4

2 に答える 2

0

システムに mySQL gem をインストールする必要があります。

apt-get には古いバージョンの ruby​​ ライブラリが含まれていることが多いため、これをインストールするために apt-get を使用しないでください。

また、最初は SQLite を使用することを強くお勧めします。また、Bundler も非常に役立ちます ( railstutorialで説明されています) 。

ubuntu/debian ベースのディストリビューション (そして本当に MySQL を使いたい):

ruby 1.8.x を使用している場合 ( で確認ruby -v):

sudo apt-get install libmysqlclient-dev
sudo apt-get install ruby-dev
sudo gem install mysql2 

Ruby 1.9.x を使用している場合:

sudo apt-get install libmysqlclient-dev
sudo apt-get install ruby1.9.1-dev
sudo gem install mysql2
于 2011-04-22T03:57:16.420 に答える
0

Ruby システムに mysql2 gem がインストールされていることを確認してください。それを確認するには、gem list -dを使用します。mysql2 gem が見つからない場合、ubuntu では、mysql2 gem をインストールする前に次のライブラリをインストールする必要があります。

# sudo apt-get install libmysqlclient15-dev  (for mysql-5.*)

# sudo apt-get install  libmysql-ruby  ruby-dev

その後、sudo gem install mysql2を使用してインストールし、database.yml 内のアダプターの値が mysql2 であることを確認します。もう 1 つの問題は、ライブラリがロードされていないことです。問題のライブラリがロードされていない場合は、このリンクを表示できます。

于 2011-04-22T02:57:56.057 に答える