我是编程新手,正在尝试为Windows 10安装Ruby on Rails。
我已经尝试过几次运行gem install bundler,但是SQLite3总是存在错误。
命令提示符说要从http://www.sqlite.org/安装SQLite3,但我不知道将它放在目录中的什么位置。
我看着mkmf.log
,但我不明白它在告诉我什么。
当我在RailsInstaller的“ bin”文件夹中查找sqlite3.def时,出现了sqlite 3.dll sqlite3应用程序和sqlite3_ruby(文件和批处理文件)。
如果任何人都知道可能出了什么问题以及如何解决它,我将非常感谢您的帮助,此问题在在线使用指南中永远不会发生。
非常感谢
命令提示符消息:
在安装sqlite3(1.4.0)时发生错误,并且Bundler无法 继续。捆绑之前,请确保
gem install sqlite3 -v '1.4.0' --source 'https://rubygems.org/'
成功。在Gemfile中:sqlite3
C:\ Sites \ test_app> gem安装sqlite3 -v 1.4.0临时增强 包含DevKit的路径...构建本机扩展。这可能需要 一段时间...错误:安装sqlite3时出错: 错误:无法构建gem本机扩展。
current directory: C:/RailsInstaller/Ruby2.3.3/lib/ruby/gems/2.3.0/gems/sqlite3-1.4.0/ext/sqlite3
C:/RailsInstaller/Ruby2.3.3/bin/ruby.exe -r ./siteconf20190317-7152-n0tljg.rb extconf.rb正在检查sqlite3.h ... 没有sqlite3.h丢失。从http://www.sqlite.org/安装SQLite3 第一。 * extconf.rb失败* 由于某种原因(可能缺少必要的库和/或头文件)而无法创建Makefile。校验 有关更多详细信息,请参见mkmf.log文件。您可能需要配置 选项。
提供的配置选项: --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 --with-make-prog --srcdir =。 --curdir --ruby = C:/RailsInstaller/Ruby2.3.3/bin / $(RUBY_BASE_NAME) --with-sqlcipher --without-sqlcipher --with-sqlite3-config --without-sqlite3-config --with-pkg-config --without-pkg-config --with-sqlcipher --without-sqlcipher --with-sqlite3-dir --without-sqlite3-dir --with-sqlite3-include --without-sqlite3-include = $ {sqlite3-dir} / include --with-sqlite3-lib --without-sqlite3-lib = $ {sqlite3-dir} / lib
要查看此扩展为何无法编译,请检查mkmf.log 可以在这里找到:
C:/RailsInstaller/Ruby2.3.3/lib/ruby/gems/2.3.0/extensions/x86-mingw32/2.3.0/sqlite3-1.4.0/mkmf.log
extconf失败,退出代码1
宝石文件将继续安装在 C:/RailsInstaller/Ruby2.3.3/lib/ruby/gems/2.3.0/gems/sqlite3-1.4.0 for 检查。结果记录到 C:/RailsInstaller/Ruby2.3.3/lib/ruby/gems/2.3.0/extensions/x86-mingw32/2.3.0/sqlite3-1.4.0/gem_make.ou
答案 0 :(得分:1)
Rails尝试自动安装最新版本的sqlite3 gem(1.4),但该新版本尚不适用于Rails。指定一个像这样的版本:
宝石文件
gem 'sqlite3', '< 1.4'
然后重新运行bundle install
。
答案 1 :(得分:0)
我有同样的问题。打开项目文件夹中的Gemfile,然后将行gem'sqlite3'更改为gem'sqlite3',如 来自
gem 'sqlite3'
到gem 'sqlite3', '< 1.4'
答案 2 :(得分:0)
gem install sqlite3 -v 1.3.13
这不会为 Windows 安装本机扩展。因此不会导致任何错误。