Ruby/Railsが初めてなので、この週末に自分で問題を解決しようとした後、ここでアドバイスを求めようとしています。
FreeBSDでRuby/Apache/Passengerの完全なセットアップを完了し、WindowsをRuby開発環境として使用するタスクを達成しようとしています。
これまでのところ:
「> rake db:create」は私に言う:
Sqlite3アダプターをインストールしてください:gem install activerecord-sqlite3-adapter
(sqlite3はバンドルの一部ではありません。Gemfileに追加してください。)
私には「理解」がありません。 activerecord-sqlite3-adapterをインストールしようとすると、「有効なgemが見つかりませんでした...」というメッセージが表示されます。
「> gem install sqlite3」は以下を返します。
Building native extensions. This could take a while...
ERROR: Error installing sqlite3:
ERROR: Failed to build gem native extension.
D:/Development/Ruby200-x64/bin/Ruby.exe extconf.rb
checking for sqlite3.h... *** extconf.rb failed ***
今、私は自分のRubyがどの状態にあるかさえわからないところに行き詰まっています。メインのRailsチュートリアルであり、これらの問題のいずれも指定していません(おそらく、Rubyは多くの人にとって自然な痛みのようです。)
私は何が欠けていますか?!? Ruby Windowsでsqlite3をインストールしようとしています。
私が行った場合 ">rais db"
SQLiteシェルが表示されます。
SQLite version 3.7.15.2 2013-01-09 11:53:05
私の問題を解決しないステップでの同様の質問: Windows 7でのSQLite 3.6のインストール
質問には答えられましたが、他の人を助けるために研究を投稿したいと思います。多くの情報をオンラインで見つけましたが、Ruby初心者なので、私はすべてを追うのに苦労しました。基本的な答えは次の投稿から来ます https://github.com/ luislavena/sqlite3-Ruby/issues/82 Ruby 2.0.0-p0および https: //github.com/Rails/rails/issues/1015 。だからここにある:
Sqlite3 gemを再度取得します。今回はプラットフォームと新しくコンパイルされたバイナリへのパスを指定します。
gem install sqlite3 --platform=Ruby -- --with-sqlite3-include=[path\to\sqlite3.h] --with-sqlite3-lib=[path\to\sqlite3.o]
例えば:
gem install sqlite3 --platform=Ruby -- --with-sqlite3-include=/c:/dev/sqlite3/ --with-sqlite3-lib=/c:/dev/sqlite3/.libs/
(手順4で指定したパスから)
これが誰かを助けることを願っています。
次のコマンドを使用して、win XP32にRuby2.0.0でsqlite3をインストールできました。
c:\>gem install sqlite3 --platform=Ruby -- --with-sqlite3-dir=C:/distr/sqlite --with-sqlite3-include=C:/distr/sqlite
フォルダーC:/distr/sqlite
には次のファイルが含まれています
それで、基本的にsqlite-amalgamation-3071602.Zip
とsqlite-dll-win32-x86-3071602.Zip
をC:/distr/sqlite
に抽出しました。
ヘッドアップ
sqlite3.dll
とsqlite3.def
のコピーをPATHのどこかに置く必要があります。私見では、sqlite3バイナリをRubyのbinフォルダに保存するのが最善です。
これは古いスレッドですが、まだ関連しています。
私たちにとっては、Gemfile
を編集してsqliteの特定のバージョンを追加するのと同じくらい簡単でした:
gem 'sqlite3', '~> 1.3.13
#!/usr/bin/env sh
mkdir c:/sqlite3x86
wget -P c:/sqlite3x86 http://packages.openknapsack.org/sqlite/sqlite-3.7.15.2-x86-windows.tar.lzma
cd c:/sqlite3x86
bsdtar --lzma -xf c:/sqlite3x86/sqlite-3.7.15.2-x86-windows.tar.lzma
gem install sqlite3 --platform=Ruby -- --with-opt-dir=c:/sqlite3x86
cd c:/
rm -rf c:/sqlite3x86
Windowsの場合は、C:/Ruby25-x64/lib/Ruby/gems/2.5.0/gems/sqlite3-1.3.13-x64-mingw32/lib/sqlite3.rb
そして確認してください
require "sqlite3"
ネイティブの代わりに
ここからファットバイナリを取得します
https://ci.appveyor.com/project/MSP-Greg/sqlite3-Ruby/build/3/job/hhk6ie8gdo545svr/artifacts
そして
gem install c:\path\to\downloaded_gem.gem
Ruby on Rails on Windowsマシンでセットアップする最も簡単な方法は、RailsInstallerを使用することです。これにより、sqlite3が自動的にインストールおよび構成されます。 。
後世のために、コメントから答えを出すと思った。問題は、SQLite3と「まだ」互換性のない新しいバージョンのRuby/Rails(Windows用)を入手したことのようです。
1.9.xにダウングレードし、実行できるようになりました。