尝试升级到最新版本的Ruby on Rails。我安装了ruby和rails(我想)。
C:\Users\benjaminw>ruby --version
ruby 2.0.0p0 (2013-02-24) [x64-mingw32]
C:\Users\benjaminw>rails -v
Rails 3.2.13
我正在遵循Ruby on Rails书中的教学指南,但它有点过时了。下一步说下载sqlite3 db并将文件解压缩到以下文件夹C:/ Ruby200 / bin
然后运行以下命令以确保正确安装了数据库
C:\Users\benjaminw>sqlite3 --version
3.7.16 2013-03-18 11:39:23 66d5f2b76750f3520eb7a495f6247206758f5b90
这是问题出现的地方。当我输入下一个命令时,我得到一个错误,似乎正确设置环境很重要。有谁知道以下是什么意思以及如何解决它?哦,我在我的Windows 7计算机DevKit-mingw64-64-4.7.2-20130224-1432-sfx.exe上安装了这个版本的devkit。
C:\Users\benjaminw>gem install sqlite3-ruby
Temporarily enhancing PATH to include DevKit...
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
C:/Ruby200/bin/ruby.exe extconf.rb
checking for sqlite3.h... no
sqlite3.h is missing. Install SQLite3 from http://www.sqlite.org/ first.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers. Check the mkmf.log file for more details. You may
need configuration options.
Provided configuration options:
--with-opt-dir
--without-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=C:/Ruby200/bin/ruby
--with-sqlite3-dir
--without-sqlite3-dir
--with-sqlite3-include
--without-sqlite3-include=${sqlite3-dir}/include
--with-sqlite3-lib
--without-sqlite3-lib=${sqlite3-dir}/
--enable-local
--disable-local
Gem files will remain installed in C:/Ruby200/lib/ruby/gems/2.0.0/gems/sqlite3-1
.3.7 for inspection.
Results logged to C:/Ruby200/lib/ruby/gems/2.0.0/gems/sqlite3-1.3.7/ext/sqlite3/
gem_make.out
答案 0 :(得分:2)
在糟糕的环境中运行导轨会让您感到头疼。依赖性将与您唯一的ruby版本冲突,并考虑重新安装您的操作系统。
看起来您正在使用Windows。我在新的Windows 8计算机上安装了rails 3.2。在Windows文件系统中随机处理配置文件几天后,我抓住了一台安装了Ubuntu操作系统的旧笔记本电脑(仅因为UEFI阻止我格式化Windows 8并安装ubuntu)。
帮自己一个忙!获取Ubuntu的安装。它使学习Ruby和Rails更容易,因为文件不会乱七八糟的Windows文件夹。
要完成,请了解RVM或RBENV。通过轻松安装和切换版本,它们将使您的生活更加美好。还有其他好处只是偏离主题。
RVM Install< - 个人选择,但我没有尝试过RBEnv。
前几次安装Rails很头疼。如果您安装上述选项之一,希望它只会令人头疼。
答案 1 :(得分:2)
由于编译SQLITE.h,我对Ruby 2.0和SQLite没有任何问题
转到以下网址,让那些希望使用Windows的其他Rails 4 Rubyists为预编译宝石编译gem的下一步工作人员将此问题平息:this link。
使用-with-opt-dir=<Path of Sqlite.3 bin, lib, include, and share folders>
命令之类的命令。唯一棘手的部分是官方sqlite3网站提供的文件是预编译的,这可能是非常难以考虑的问题。
如果您在使用Ruby 2.0和Rails 4.0.0.0beta1时仍然遇到任何问题,我可以给您进一步说明。
对于Sqlite3和Rails,使用Ruby 2.0和Windows对你来说应该是完美的。请注意,当涉及到Rails 4.0.0beta1时,要避免使用Ruby 2.0 64位,因为Rails 4的一个相关宝石不正确地标记了您的计算机的CPU与其gem要求不兼容;这很快就解决了。
编辑:注意到我没有得到更多明确指示的帮助;为您提供了已经花时间的人和启动并运行所需文件的链接。
@Brian Petro:实际上,如果你知道Gem和.h文件在一天结束时如何有效地构建它们,那么解决这个问题就很容易了。问题源于如何用Ruby 2.0处理一些宝石;从Ruby 2.0预编译的gems开始,如果它们具有ABI Breakage,那么它们对于以前版本的Ruby来说是不方便的。 Sqlite3 gem就是其中之一:
答案 2 :(得分:1)
您是否在rubyinstaller google组中看到了主题New Knapsack package: sqlite (experimental),您可以使用新软件包并安装gem。
我可以成功安装gem,你可以参考以下主题:
我的环境:
答案 3 :(得分:0)
你试过http://railsinstaller.org/吗?从他们的网站:“RailsInstaller拥有你需要的一切运行。在一个易于使用的安装程序中,你可以获得完整Rails堆栈所需的所有常见软件包。立即下载并编写(并运行)Rails代码立刻。”看起来它包含sqlite。
答案 4 :(得分:0)
这link会有所帮助。
首先安装 libsqlite3-dev ,然后使用gem 尝试 sqlite3。
将包管理器用于libsqlite3-dev
和
sudo gem install sqlite3