安装 Ruby gems 时的开发人员工具问题

2023-12-22

我正在尝试将 puma 安装到我的 MacOS 10.13.6 上。要安装 puma,我运行命令gem install puma但它回来了

Building native extensions. This could take a while...
    ERROR:  Error installing puma:
        ERROR: Failed to build gem native extension.

   current directory: /Users/salem/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/puma-3.12.0/ext/puma_http11
    /Users/salem/.rbenv/versions/2.5.1/bin/ruby -r ./siteconf20180801-14654-17z0n88.rb extconf.rb
    checking for BIO_read() in -lcrypto... *** 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=/Users/salem/.rbenv/versions/2.5.1/bin/$(RUBY_BASE_NAME)
        --with-puma_http11-dir
        --without-puma_http11-dir
        --with-puma_http11-include
        --without-puma_http11-include=${puma_http11-dir}/include
        --with-puma_http11-lib
        --without-puma_http11-lib=${puma_http11-dir}/lib
        --with-openssl-dir
        --with-openssl-include
        --without-openssl-include=${openssl-dir}/include
        --with-openssl-lib
        --without-openssl-lib=${openssl-dir}/lib
        --with-cryptolib
        --without-cryptolib
    /Users/salem/.rbenv/versions/2.5.1/lib/ruby/2.5.0/mkmf.rb:456:in `try_do': The compiler failed to generate an executable file. (RuntimeError)
    You have to install development tools first.
        from 


    ...
    ...
    To see why this extension failed to compile, please check the mkmf.log which can be found here:

      /Users/salem/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-17/2.5.0-static/puma-3.12.0/mkmf.log

    extconf failed, exit code 1

Gem files will remain installed in /Users/salem/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/gems/puma-3.12.0 for inspection.
Results logged to /Users/salem/.rbenv/versions/2.5.1/lib/ruby/gems/2.5.0/extensions/x86_64-darwin-17/2.5.0-static/puma-3.12.0/gem_make.out`

The _mkmf.log_可以在下面找到...

clang -o conftest -I/Users/salem/.rbenv/versions/2.5.1/include/ruby-2.5.0/x86_64-darwin17 -I/Users/salem/.rbenv/versions/2.5.1/include/ruby-2.5.0/ruby/backward -I/Users/salem/.rbenv/versions/2.5.1/include/ruby-2.5.0 -I. -I/usr/local/opt/openssl/include -I/Users/salem/.rbenv/versions/2.5.1/include  -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT    -O3 -Wno-error=shorten-64-to-32  -pipe conftest.c  -L. -L/Users/salem/.rbenv/versions/2.5.1/lib -L/usr/local/opt/openssl/lib -L. -L/Users/salem/.rbenv/versions/2.5.1/lib  -fstack-protector -L/usr/local/lib     -lruby.2.5.1-static -framework Foundation  -lpthread -ldl -lobjc "
error: unable to open output file '~/tmp/conftest-8ad96a.o': 'No such file or directory'
1 error generated.
checked program was:
/* begin */
1: #include "ruby.h"
2: 
3: int main(int argc, char **argv)
4: {
5:   return 0;
6: }
/* end */

我的 Mac 上安装了 Xcode。我运行了 xcode-select --install 确认 Xcode 已经安装。

然后我认为这可能是权限问题......

~ $ ls -lah tmp
total 0
drwxrwxrwx   3 salem  staff    96B Jul 30 08:35 .
drwxr-xr-x+ 62 salem  staff   1.9K Aug  1 13:17 ..
drwxr-xr-x   3 salem  staff    96B Jul 27 15:11 vmSWVyg

但它似乎设置了正确的权限。

安装 nokugiri 时也会出现此问题


您可能想要安装 openssl,例如通过自制软件:

brew install openssl

类似的问题也被讨论过github https://github.com/puma/puma/issues/783.

如果是 nokogiri,libxml 可能会丢失:

brew install libxml2
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

安装 Ruby gems 时的开发人员工具问题 的相关文章

  • Twitter Bootstrap 中下拉链接的模态

    我正在尝试从下拉菜单中的链接进行模式启动 该模式似乎已启动 网站变为灰色 但看不到 来自不在下拉列表中的常规链接的模态工作得很好 我对 jquery 进行了愚弄 但由于我是 jquery 的新手 所以没有任何结果 这是我的网站代码
  • 带有附加参数的redirect_to

    我是一个菜鸟 redirect to users url notice Succeed p p 然后我添加一个message它失败了 redirect to users url notice Succeed message test p p
  • Rails 3:使用 Simple_form 如何创建一个向specialities#create 发布帖子的表单?

    如何使用 Simple form 创建一个向specialities create 发布帖子的表单 我试过这个
  • 如何在 gem 的示例脚本中使用 pry-byebug ?

    我正在制作我的第一个 gem 它不是 Rails 应用程序 而是一个带有一些 AI 的 tic tac toe 库 这样我就可以与一个永远不会输的计算机对手比赛 并在可能的情况下强行获胜 现在我正在尝试调试人工智能中的攻击策略 但我似乎无法
  • 什么是 - 获取的是一个目录 - 错误消息

    我收到这个奇怪的错误 Users gideon Documents ca ruby rubytactoe lib player rb 13 in gets Is a directory spec Errno EISDIR 玩家规格 rb r
  • 在特定页面上执行 javascript 的正确“Rails”方式

    我试图在特定页面上运行 javascript 而我唯一的解决方案似乎是反模式 我有controller js内部生成的assets javascripts 我在用着gem jquery turbolinks 我的代码类似于以下内容 docu
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除
  • 下载所有 gems 依赖项

    我想通过下载任何所需的文件并将它们带到另一台计算机来安装指南针没有互联网连接 我已经下载了指南针的源包 当我在未连接的计算机上运行 gem 时 它抱怨缺少依赖项 有什么解决办法吗 这正是我遇到的问题 经过一段时间的搜索后 我找到了一个可以使
  • 有时您可能需要重新启动 Webrick 才能看到所做的更改,这是否正确?

    我听 Kevin Skoglund lynda com 说 养成在开发过程中频繁重新启动 Webrick 的习惯是一个很好的习惯 虽然通常您不需要重新启动 Webrick 来查看更改 但他暗示在某些特殊情况下可能需要这样做 有谁知道这些情况
  • 在 ActiveAdmin 或打印解决方案中动态更改分页

    我是 Activeadmin 和 Rails 的新手 我需要一些帮助 我有一个分页模型 我想允许用户更改分页值或完全禁用它 这样它就可以打印 到打印机 所有记录 或过滤后的记录 我知道我可以在 before filter 中使用 per p
  • Rails 4 的 mobile_fu

    我正在尝试将我的应用程序从 Rails 3 2 13 切换到 Rails 4 在此过程中 我遇到了一个主要障碍 我使用 gem mobile fu 来确定用户是否来自移动设备 该 gem 需要 Railties 3 2 13 但 Rails
  • Rails 从 OrdersController 更新用户模型的属性

    这是我的代码 订单控制器类 def create order Order new params order if order purchase work GATEWAY store credit card options result wo
  • 带回形针、导轨的水印图像 4

    我一直在尝试按照中列出的答案向我的图像添加水印带有回形针的水印 https stackoverflow com questions 13517757 watermark with paperclip 水印 rb module Papercl
  • 无法使用 Rails 6 Actiontext 渲染 youtube 嵌入 iframe

    我已经设置了一个自定义嵌入模型 这样我就可以将 Instagram 或 YouTube 嵌入等内容添加到我网站上的 ActionText 内容中 它适用于 Instagram 嵌入 但不适用于 YouTube 作为参考 我要显示的 yout
  • Rails 4 和 Turbolinks - 元标签未更改

    我有一个启用了 Turbo Links 的 Rails 4 应用程序 但在更改页面时无法刷新元标记 不是完全刷新 我读到元标记需要包含在加载涡轮链接的 JavaScript 之前 但它没有效果 完全刷新可以完成这项工作 但不幸的是这不是我所
  • 如何使用 Ruby on Rails 3 检查 HTTP 请求的“Content-Length”字段?

    我正在使用 Ruby on Rails 3 在我的视图文件中我有以下代码 为了避免服务器过载 我会在服务器接收上传文件之前检查上传文件的大小 这是因为 按下表单的提交按钮 服务器会先完整接收文件 然后再检查文件 我知道一个HTTP 请求有标
  • 使用redirect_to :create 动作

    我正在尝试重定向到另一个控制器的创建方法 但是 我找不到将方法设置为 POST 的方法 这将导致调用索引方法 使用 method gt post只是创建一个新参数 但不会更改 http 方法 有什么想法如何重定向到创建方法吗 您无法在重定向
  • 我必须使用什么加密程序来通过 HTTP 协议发送加密的“电子邮件”和“密码”值?

    我正在使用 Ruby on Rails 3 我想通过 HTTP 协议发送 电子邮件 和 密码 值 我知道 我不应该 但我需要 我需要从发送用户凭据我的客户申请到一个我的服务应用 我可以使用公共和私人RSA密钥来实现这一点 但如果是这样 我不
  • 如何以 Rails 形式将图像从 上传到具有 Rails Active Storage 的 S3?

    正如标题中所述 我正在尝试使用 Rails 的 Active Storage 从嵌套在 Rails 表单中的元素将图像上传到我的 S3 存储桶 到目前为止我已经能够使用使用 Active Storage 上传图像 这User class h
  • Rails 3 SSL 路由从 https 重定向到 http

    这个问题与此相关SO 问答 rails 3 ssl deprecation https stackoverflow com questions 3634100 rails 3 ssl deprecation建议使用routes rb和类似的

随机推荐

  • 标识符指的是组件的私有成员

    html
  • TCP 连接的可靠性如何?

    我已经编写了服务器 客户端应用程序 服务器是用c 编写的 客户端代码是使用java编写的 通信协议是TCP 使用 tcp 传输文件时 可能会发送丢失的数据 换句话说 tcp 是否保证数据正确到达 我是否应该发送该文件的标头信息以检查错误 例
  • Django:如何对更新视图/表单进行单元测试

    我正在尝试对我的更新表单和视图进行单元测试 我使用 Django Crispy Forms 来创建和更新表单 UpdateForm 继承了 CreateForm 并对提交按钮文本做了一些小改动 CreateView 和UpdateView
  • PHP:启动 PayPal 结帐的简单方法?

    我有功能齐全的购物车解决方案 我想要的只是我实际传递产品名称 总数 退货地址和我的贝宝地址的代码 以便它可以将我引导到购物车 有人能引导我走向正确的方向吗 PayPal 有上百万个不同的版本 我了解到我需要的是 paypal 网站付款 有人
  • TCP流回放工具

    我正在寻找一种用于记录和重放 TCP 流一侧以进行测试的工具 我看到记录整个 TCP 流 服务器和客户端 用于测试防火墙等的工具 但我正在寻找的是一种工具 它仅记录客户端提交的流量 带有计时信息 然后重新提交到服务器进行测试 由于 TCP
  • Django - Crispy Forms - 自定义输入定位和内联单选按钮

    我不久前一直在使用 django crispy forms 并我想知道是否有一种方法可以设置输入的位置 例如col md XX类或其他东西 使其看起来更好 而不仅仅是字段列表 这是一个例子 This is a normal render o
  • Neo4j 浏览器无法在 Google Chrome 中运行

    在 MacOS Yosemite 10 10 3 中升级到最新的 XCode Command Tools 后 无法使用 Chrome 版本 42 0 2311 90 64 位 作为 neo4j 浏览器客户端 不过 Safari 运行良好 有
  • 高效的纯文本模板引擎

    我有一个简单的警报系统 可以抓取网络上的号码 将它们与预定义的文本模板混合以获取警报 并将其发送给客户 警报是非常简单的纯文本 所以除了纯文本 数字 简单函数 例如 ifthenelse 之外 我不会期望太多 越快越好 那么有没有现成的开源
  • 使用 realloc 调整缓冲区大小

    如果指向的区域被移动 则会出现 free ptr 已完成 您能解释一下上面的内容吗realloc 此行来自 calloc malloc realloc 和 free 的手册页 我认为这更好地解释了这一点 如果没有足够的空间 扩展当前块 当前
  • 暂停NS操作

    I have NSOperationQueue和一些NSOperations in it NSInvocationOperations 尤其 此操作会进行一些计算并相应地更改 UI 元素的状态 当然 通过performSelectorOnM
  • 如何在我的用户名中使用带有 @ 符号的 linux 命令行 ftp? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 当我的用户名有一个时 如何在 Linux 命令行上运行它 中间签个字 ftp u user password host destinati
  • 这个生产者-消费者实现中是否存在竞争条件?

    在 操作系统概念 Silberschatz 第 9 版 的 3 4 1 节中 作者提出了生产者 消费者问题 并给出了以下使用循环缓冲区的实现 第 125 126 页 Shared variables define BUFFER SIZE 1
  • Rails 4从数据库填充下拉值

    我有一个 Rails 形式的下拉菜单 这工作正常 但我怎样才能使它动态 与模型数据交互 我有一个控制器 其操作包含 list List all 我怎样才能填充id and name in my combobox 我一直在四处寻找 但我不清楚
  • 从 PHP 匿名函数访问变量

    我有以下带有静态变量的类 如何从匿名 PHP 函数中访问类的静态函数 class MyClass public static function MyFunction mylocalparam MyStaticClass MyStaticMe
  • 如何修复“java.sql.SQLSyntaxErrorException:'字段列表'中的未知列'product0_.return_policy'”异常?

    当我尝试在浏览器上运行 URL 时 我收到此 SQLSyntaxErrorException 字段列表 中的未知列 product0 return policy GET一切products 看这里 https i stack imgur c
  • 反应按钮的 onClick 属性:

    1 和 2 有什么区别React onClick gt handleDelete id 1 onClick handleDelete id 2 为什么 2 会导致无限循环 而 1 却工作得很好 我找不到任何关于 React 中 onClic
  • 在 GlassFish 中将 JSF 输入提交值的请求字符编码设置为 UTF-8

    我的所有值中插入的值都有问题
  • ICS 上区分平板电脑和智能手机

    据我所知 默认情况下 ICS 之前 为了区分平板电脑和智能手机 开发人员可以使用 Android 清单中的 sdk 版本 除了屏幕尺寸和 openGL 过滤器 现在 随着 ICS 在 SP 和平板电脑上运行 如果我需要区分 SP 和平板电脑
  • 在 Kotlin 中,这个 get() 做了什么

    我对 Kotlin 很陌生 想知道get login email txt toString do 是否设定email String get and set value 字段后面表示自定义 getter 和 或 setter 的声明 这是使用
  • 安装 Ruby gems 时的开发人员工具问题

    我正在尝试将 puma 安装到我的 MacOS 10 13 6 上 要安装 puma 我运行命令gem install puma但它回来了 Building native extensions This could take a while