我想使用命令
创建myApprails new myApp
但它会出错:
使用本机扩展安装sqlite3(1.3.4) Gem :: Installer :: ExtensionBuildError:错误:无法构建gem native 扩展
/usr/bin/ruby1.8 extconf.rb检查sqlite3.h ...没有sqlite3.h是 失踪。尝试'port install sqlite3 + universal'或'yum install sqlite3-devel'并检查您的共享库搜索路径(位置 您的sqlite3共享库所在的位置)。 * extconf.rb失败* 由于某些原因无法创建Makefile,可能缺少必要的库和/或标头。校验 mkmf.log文件以获取更多详细信息。您可能需要配置 选项。
提供配置选项: --with-OPT-DIR --without-OPT-DIR --with-OPT-包括 --without-OPT-包括= $ {停用DIR} /包括 --with-OPT-LIB --without-OPT-LIB = $ {选择-DIR} / lib目录 --with-MAKE-PROG --without-MAKE-PROG --srcdir =。 --curdir --ruby =的/ usr /斌/ ruby1.8的 --with-sqlite3的-DIR --without-sqlite3的-DIR --with-sqlite3的,包括 --without-sqlite3的-包括= $ {sqlite3的-DIR} /包括 --with-sqlite3的-LIB --without-sqlite3的-LIB = $ {sqlite3的-DIR} / lib中 --enable-地方 --disable本地
Gem文件将保持安装状态 /usr/lib/ruby/gems/1.8/gems/sqlite3-1.3.4进行检查。结果 登录到 /usr/lib/ruby/gems/1.8/gems/sqlite3-1.3.4/ext/sqlite3/gem_make.out 安装sqlite3(1.3.4)时出错,而Bundler不能 继续。确保
gem install sqlite3 -v '1.3.4'
成功 在捆绑之前。
我该怎么办?感谢
答案 0 :(得分:12)
确保安装了SQLite3的开发标题。
例如:
在Ubuntu上,您可以使用apt-get install libsqlite3-dev
在安装了自制软件的Mac上:brew install sqlite
。
答案 1 :(得分:3)
每当我在Ubuntu上重新安装rails时,我发现运行此命令非常有用。这通常会处理超级常见的zlib和sqlite3错误。
/ usr / bin / apt-get install build-essential bison openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libsqlite3-0 libsqlite3-dev sqlite3 libxml2-dev libxslt-dev autoconf libc6 -dev ncurses-dev
答案 2 :(得分:1)
我在Windows中遇到了同样的问题。
我现在只找到两种解决方案
1 *项目创建失败后,进入其文件夹并修改Gemfile。
换行
gem 'sqlite3', '1.3.11'
通过以下其中一种方式:
gem 'sqlite3', git: "https://github.com/sparklemotion/sqlite3-ruby"
gem 'sqlite3', git: "https://github.com/sparklemotion/sqlite3-ruby", branch: "add-gemspec"
gem 'sqlite3', git: "https://github.com/larskanis/sqlite3-ruby", branch: "add-gemspec"
并再次为此项目运行bundle install
命令
我发现的第二个解决方案是从https://rubygems.org/下载gem,并将其保存在本地以从文件安装,首先,您必须安装mingw(但仅适用于Windows)
C:\Sites>ridk exec pacman -S mingw-w64-x86_64-dlfcn
C:\Sites>gem install --local C:\sqlite3-1.4.0.gem
我尝试了其他一些解决方案,但这两个是唯一为我工作的解决方案。
https://mycodeissuesandfixes.blogspot.com/2019/02/ruby-on-rails-issue-about-sqlite-3-gem.html 这些是其他修复程序,但是我不知道它们是否会在Linux中为您提供帮助。 希望能帮助到你!!我一直尝试完成5天,直到找到可以解决此sqlite 3 gem错误的东西