1

新しいAmazonLinuxインスタンスを作成し、ruby1.9.3とrails3.2.8をインストールしました。

新しいプロジェクトを作成すると、sqlite3が原因ですぐに失敗します。エラーは次のとおりです。

[root@xxxxx fun]# rails server
/usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `require': cannot load such file -- sqlite3/sqlite3_native (LoadError)
    from /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:6:in `rescue in <top     (required)>'
    from /usr/local/share/gems/gems/sqlite3-1.3.6/lib/sqlite3.rb:2:in `<top     (required)>'

私はsqlite3がレールの外でうまく機能していることを確認しました(つまり、データベースを正常に作成し、rubyコードを使用して挿入/読み取りを行いました)。irbにsqlite3をロードする簡単なショーを次に示します。

irb(main):001:0> require 'sqlite3'
=> true

バンドルのインストールについては、すべて最新です。sqlite3はバージョン1.3.6です

次のパッケージをインストールしています。

ruby19-1.9.3.0-7.17.amzn1.i686
ruby19-devel-1.9.3.0-7.17.amzn1.i686
ruby19-irb-1.9.3.0-7.17.amzn1.noarch
ruby19-libs-1.9.3.0-7.17.amzn1.i686
rubygem19-io-console-0.3-7.17.amzn1.i686
rubygem19-rdoc-3.9.4-7.17.amzn1.i686
rubygems19-1.8.11-7.17.amzn1.noarch
sqlite-3.6.20-1.8.amzn1.i686
sqlite-devel-3.6.20-1.8.amzn1.i686

私が物事を機能させるために何を試みることができるかについてのアイデアはありますか?ありがとう!

更新 「楽しい」のために、Gemfileからgem sqlite3行をコメントアウトし、「railsserver」を再試行しました。最初に、javascriptランタイム(私が修正できた)がないことについて不平を言いましたが、その後、次のようになります。私のインストールに何か問題があるようです。

[root@xxxx fun]# rails server
/usr/local/share/gems/gems/railties-3.2.8/lib/rails/railtie/configuration.rb:85:in `method_missing': undefined method `active_record' for #<Rails::Application::Configuration:0x9e68f58> (NoMethodError)
    from /srv/rails/fun/config/application.rb:54:in `<class:Application>'
    from /srv/rails/fun/config/application.rb:13:in `<module:Fun>'
    from /srv/rails/fun/config/application.rb:12:in `<top (required)>'
4

1 に答える 1

1

パスに問題がある可能性があります。

Ruby、Rails、またはgemの複数のバージョンがインストールされているかどうかを確認するには:

find / | grep bin/ruby

    検索/| grep bin / rails find / | grep bin / gem

Amazonサーバーでは、通常、システムをRubyのままにし、優れたruby-buildスクリプト(私の意見ではRVMよりも優れています)を使用して、現在のRubyをインストールします。

https://github.com/sstephenson/ruby-build

複数のRubyを使用している場合は、環境を設定して1つを選択することをお勧めします。たとえば、次のようなファイルまたはファイルruby-buildでPATHを使用または設定します。.bashrc/etc/environment

PATH=/opt/ruby/1.9.1-p134/bin;$PATH

RVMを使用している場合は、RVMをアンインストールして、ruby-buildを使用するように変更することをお勧めします。

RVMをアンインストールするには、次のスクリプトを使用します。

https://github.com/SixArm/sixarm_unix_shell_scripts/blob/master/rvm-uninstall-danger
于 2012-09-02T14:59:25.660 に答える