【发布时间】:2019-07-11 07:19:30
【问题描述】:
我对 ruby 和 rails 很陌生。我正在尝试安装到 sqlite3 以尝试教程并遇到问题。我在 Windows 10 上并使用 ruby 2.6.1p33 (2019-01-30 revision 66950) [x64-mingw32]。
这是我在运行gem install sqlite3-ruby 时遇到的安装错误。我也试过运行gem install sqlite3 --platform=ruby -- --with-sqlite3-include=c:/sqlite3/include --with-sqlite3-lib=c:/sqlite3/lib
C:/Ruby26-x64/bin/ruby.exe -I C:/Ruby26-x64/lib/ruby/2.6.0 -r ./siteconf20190217-3116-1d59gcv.rb extconf.rb
checking for sqlite3.h... yes
checking for pthread_create() in -lpthread... yes
checking for -ldl... no
checking for dlopen()... no
missing function dlopen
*** 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:/Ruby26-x64/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
--with-pthreadlib
--without-pthreadlib
--with-dllib
--without-dllib
To see why this extension failed to compile, please check the mkmf.log which can be found here:
C:/Ruby26-x64/lib/ruby/gems/2.6.0/extensions/x64-mingw32/2.6.0/sqlite3-1.4.0/mkmf.log
extconf failed, exit code 1
我从他们的网站下载了 sqlite3,这里是C:\sqlite3\的文件夹结构
sqldiff.exe
sqlite3.exe
sqlite3_analyzer.exe
include\shell.c
include\sqlite3.c
include\sqlite3.h
include\sqlite3ext.h
lib\sqlite3.def
lib\sqlite3.dll
我还复制了sqldiff.exe, sqlite3.exe and sqlite3_analyzer.exe 到C:\Ruby26-x64\bin。
在我的环境变量中,我已将C:\sqlite3\ 添加到PATH 并创建了一个新的环境变量sqlite3-dir 指向C:\sqlite3\
有人可以为这个安装问题提供一些帮助吗?
【问题讨论】:
-
您需要最实际的版本吗?我在使用 sqlite3 1.4.0 时也遇到了问题,但 1.3.13 版对我来说效果很好。
gem install sqlite3 -v 1.3.13 -
我能够使用此链接中的这些步骤解决该问题:github.com/sparklemotion/sqlite3-ruby/issues/241
-
这个问题的最佳时机。我正在学习 Ruby on Rails,但在我的第一个项目中遇到了这个错误。
-
有人将该链接放在评论中。不知道为什么那条评论被删除了。