更新:查看以下后续问题:Windows上的Gem更新--它坏了吗?
在Windows上,当我这样做时:
gem install sqlite3-ruby我得到以下错误:
Building native extensions. This could take a while...
ERROR: Error installing sqlite3-ruby:
ERROR: Failed to build gem native extension.
c:/ruby/bin/ruby.exe extconf.rb install sqlite3-ruby --platform Win32
checking for fdatasync() in rt.lib... no
checking for sqlite3.h... no
nmake
'nmake' is not recognized as an internal or external command,
operable program or batch file.
Gem files will remain installed in c:/ruby/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4 for inspection.
Results logged to c:/ruby/lib/ruby/gems/1.8/gems/sqlite3-ruby-1.2.4/ext/sqlite3_api/gem_make.out同样的事情也发生在的上。我似乎还记得这些宝石在< 1.0的宝石上安装得很好,但是现在我使用的是1.2.0,一切都变糟了。
我也尝试过这样做:
gem install sqlite3-ruby --platform Win32不用说,这也不起作用(同样的错误)
有人知道这是怎么回事吗?怎么解决这个问题?
更新:查看以下后续问题:Windows上的Gem更新--它坏了吗?
发布于 2008-09-04 14:13:02
正如内森所建议的那样,这似乎与sqlite3ruby和hpricot的最新版本似乎没有Windows版本有关。下面是面对这种情况时应该做的事情(请注意,创业板的名称是自动通配符的,因此您可以只输入sql并获得以sql开头的所有宝石的列表):
$ gem list --remote --all sqlite
*** REMOTE GEMS ***
sqlite (2.0.1, 2.0.0, 1.3.1, 1.3.0, 1.2.9.1, 1.2.0, 1.1.3, 1.1.2, 1.1.1, 1.1)
sqlite-ruby (2.2.3, 2.2.2, 2.2.1, 2.2.0, 2.1.0, 2.0.3, 2.0.2)
sqlite3-ruby (1.2.4, 1.2.3, 1.2.2, 1.2.1, 1.2.0, 1.1.0, 1.0.1, 1.0.0, 0.9.0, 0.6.0, 0.5.0)然后您可以选择要安装的版本:
gem install sqlite3-ruby -v 1.2.3为了成功地安装杏,我执行了以下操作:
gem install hpricot -v 0.6令人恼怒的是,做一个gem update试图将宝石更新到他们最新的,坏的Windows版本。当更新例程遇到错误时,它会将您排除在整个进程之外。对于这个问题,这里有一个解决方案。
那么,这个问题是宝石中的一个bug吗?gems不应该自动检测平台并安装最新的兼容版本吗?
发布于 2009-01-24 20:17:32
我在Ubuntu上也有同样的问题,这解决了我的问题:
http://newsgroups.derkeiler.com/Archive/Comp/comp.lang.ruby/2008-08/msg00339.html
发布于 2013-07-28 11:04:07
首先来自sqlite.org(http://www.sqlite.org/download.html)
下载->
Precompiled Binaries: `sqlite-dll-win32-x86-3071700.zip` and Source Code: `sqlite-autoconf-3071700.tar.gz` then extract as:-include
--sqlite3.h
--sqlite3ext.h
-lib
--shell.c
--sqlite3.c
--sqlite3.def
--sqlite3.dll最后安装gem,如:
gem install sqlite3 --platform=ruby -- --with-sqlite3-include=path\to\include
--with-sqlite3-lib=path\to\lib --no-ri --no-rdoc祝好运!
https://stackoverflow.com/questions/43778
复制相似问题