18

我对 ruby​​ on rails 完全陌生。
我在我的 Ubuntu 13.04 上安装了 ruby​​ 1.9.3p194 和 Rails 3.2.8。
我尝试使用代码创建我的第一个

铁轨新烂--T

我有这样的东西

      创造  
      创建 README.rdoc
      创建耙文件
      创建 config.ru
      创建 .gitignore
      创建 Gemfile
      创建应用
      创建应用程序/资产/图像/rails.png
      创建应用程序/资产/javascripts/application.js
      创建 app/assets/stylesheets/application.css
      创建应用程序/控制器/application_controller.rb
      创建 app/helpers/application_helper.rb
      创建应用程序/邮件
      创建应用程序/模型
      创建 app/views/layouts/application.html.erb
      创建应用程序/邮件程序/.gitkeep
      创建应用程序/模型/.gitkeep
      创建配置
      创建 config/routes.rb
      创建 config/application.rb
      创建 config/environment.rb
      创建配置/环境
      创建 config/environments/development.rb
      创建 config/environments/production.rb
      创建配置/环境/test.rb
      创建配置/初始化程序
      创建 config/initializers/backtrace_silencers.rb
      创建 config/initializers/inflections.rb
      创建 config/initializers/mime_types.rb
      创建 config/initializers/secret_token.rb
      创建 config/initializers/session_store.rb
      创建 config/initializers/wrap_parameters.rb
      创建配置/语言环境
      创建 config/locales/en.yml
      创建配置/boot.rb
      创建 config/database.yml
      创建数据库
      创建 db/seeds.rb
      创建文档
      创建文档/README_FOR_APP
      创建库
      创建库/任务
      创建 lib/tasks/.gitkeep
      创建库/资产
      创建 lib/assets/.gitkeep
      创建日志
      创建日志/.gitkeep
      创建公共
      创建 public/404.html
      创建 public/422.html
      创建 public/500.html
      创建公共/favicon.ico
      创建 public/index.html
      创建 public/robots.txt
      创建脚本
      创建脚本/rails
      创建测试/夹具
      创建测试/fixtures/.gitkeep
      创建测试/功能
      创建测试/功能/.gitkeep
      创建测试/集成
      创建测试/集成/.gitkeep
      创建测试/单元
      创建测试/单元/.gitkeep
      创建测试/性能/browsing_test.rb
      创建 test/test_helper.rb
      创建 tmp/缓存
      创建 tmp/缓存/资产
      创建供应商/资产/javascripts
      创建供应商/资产/javascripts/.gitkeep
      创建供应商/资产/样式表
      创建供应商/资产/样式表/.gitkeep
      创建供应商/插件
      创建供应商/插件/.gitkeep
         运行捆绑安装
输入您的密码以将捆绑的 RubyGems 安装到您的系统:
从 https://rubygems.org/ 获取 gem 元数据............
从 https://rubygems.org/.. 获取 gem 元数据
解决依赖关系...
使用 rake (10.1.0)
使用 i18n (0.6.4)
使用 multi_json (1.7.7)
使用 activesupport (3.2.8)
使用构建器 (3.0.4)
使用 activemodel (3.2.8)
使用 erubis (2.7.0)
使用旅程 (1.0.4)
使用机架 (1.4.5)
使用机架缓存 (1.2)
使用机架测试(0.6.2)
使用远足 (1.2.3)
使用倾斜 (1.4.1)
使用链轮 (2.1.3)
使用动作包 (3.2.8)
使用 mime 类型 (1.23)
使用多语言 (0.3.3)
使用树顶 (1.4.14)
使用邮件 (2.4.4)
使用 actionmailer (3.2.8)
使用 arel (3.0.2)
使用 tzinfo (0.3.37)
使用活动记录 (3.2.8)
使用活动资源 (3.2.8)
使用捆绑器 (1.3.5)
使用咖啡脚本源(1.6.3)
使用 execjs (1.4.0)
使用咖啡脚本(2.2.0)
使用 rack-ssl (1.3.3)
使用 json (1.8.0)
使用 rdoc (3.12.2)
使用雷神 (0.18.1)
使用铁轨 (3.2.8)
使用咖啡轨 (3.2.2)
使用 jquery-rails (3.0.4)
使用导轨 (3.2.8)
使用 sass (3.2.9)
使用 sass-rails (3.2.6)
安装 sqlite3 (1.3.7)
Gem::Installer::ExtensionBuildError: 错误: 无法构建 gem 原生扩展。

        /usr/bin/ruby1.9.1 extconf.rb
检查 sqlite3.h ... 否
sqlite3.h 丢失。尝试“端口安装 sqlite3 +universal”
或 'yum install sqlite-devel' 并检查您的共享库搜索路径(
您的 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
    --没有-make-prog
    --srcdir=。
    --curdir
    --ruby=/usr/bin/ruby1.9.1
    --with-sqlite3-dir
    --没有-sqlite3-dir
    --with-sqlite3-include
    --without-sqlite3-include=${sqlite3-dir}/include
    --with-sqlite3-lib
    --without-sqlite3-lib=${sqlite3-dir}/lib
    --启用本地
    --禁用本地


Gem 文件将继续安装在 /home/dvs/.bundler/tmp/3341/gems/sqlite3-1.3.7 以供检查。
结果记录到 /home/dvs/.bundler/tmp/3341/gems/sqlite3-1.3.7/ext/sqlite3/gem_make.out
安装 sqlite3 (1.3.7) 时出错,Bundler 无法继续。
在捆绑之前确保 `gem install sqlite3 -v '1.3.7'` 成功。

我试过了

sudo gem install sqlite3 -v '1.3.7'

现在我收到这样的错误

dvs@dvs-Inspiron-N4010:~/testruby$ sudo gem install sqlite3 -v '1.3.7'
构建原生扩展。这可能需要一段时间...
错误:安装 sqlite3 时出错:
    错误:无法构建 gem 原生扩展。

        /usr/bin/ruby1.9.1 extconf.rb
检查 sqlite3.h ... 否
sqlite3.h 丢失。尝试“端口安装 sqlite3 +universal”
或 'yum install sqlite-devel' 并检查您的共享库搜索路径(
您的 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
    --没有-make-prog
    --srcdir=。
    --curdir
    --ruby=/usr/bin/ruby1.9.1
    --with-sqlite3-dir
    --没有-sqlite3-dir
    --with-sqlite3-include
    --without-sqlite3-include=${sqlite3-dir}/include
    --with-sqlite3-lib
    --without-sqlite3-lib=${sqlite3-dir}/lib
    --启用本地
    --禁用本地


Gem 文件将继续安装在 /usr/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.7 中以供检查。
结果记录到 /usr/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.7/ext/sqlite3/gem_make.out

请帮助我
谢谢

4

4 回答 4

47

它失败了,因为您缺少依赖项。你可以通过运行得到它 sudo apt-get install libsqlite3-dev

于 2013-07-22T12:27:22.197 回答
4

我在使用 Fedora 时遇到了这个问题。为了后代和百胜的人们......

sudo yum install libsq3-devel
于 2015-02-12T18:17:39.157 回答
1

这修复了 Amazon Linux (AWS)

sudo yum install sqlite-devel
于 2019-04-18T00:21:23.063 回答
0

$sudo apt-get install libsqlite3-dev

如果它响应:

E: dpkg 被中断,您必须手动运行 'sudo dpkg --configure -a' 来纠正问题。

然后运行 $sudo dpkg --configure -a
运行$rails s

如果它响应:

下载 nokogiri-1.10.0 发现依赖项不在 API 或锁定文件中(mini_portile2 (~> 2.4.0))。

安装--full-index或运行bundle update nokogiri应该可以解决问题。
运行$ bundle update nokogiri ,一切都会再次完美!

于 2019-08-19T10:32:07.017 回答