Gem 安装 ruby​​-audio 失败

2023-12-06

我已经克隆了一个现有的存储库并且现在正在运行bundle install- 由于某种原因,它在 ruby​​-audio gem 上失败了。

Installing ruby-audio (1.6.1) with native extensions 
Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

/Users/thisuser/.rvm/rubies/ruby-1.9.3-p194/bin/ruby extconf.rb 
checking for sndfile.h in /opt/local/include,/usr/local/include,C:/Program Files (x86)/Mega-Nerd/libsndfile/include,C:/Program Files/Mega-Nerd/libsndfile/include... no
checking for sf_open() in -lsndfile-1... no
checking for sf_open() in -lsndfile... no
*** 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
--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/thisuser/.rvm/rubies/ruby-1.9.3-p194/bin/ruby
--with-sndfile-dir
--without-sndfile-dir
--with-sndfile-include
--without-sndfile-include=${sndfile-dir}/include
--with-sndfile-lib
--without-sndfile-lib=${sndfile-dir}/lib
--with-sndfile-1lib
--without-sndfile-1lib
--with-sndfilelib
--without-sndfilelib
extconf.rb:26:in `<main>':   Can't find libsndfile (http://www.mega-nerd.com/libsndfile/) (RuntimeError)

  Try passing --with-sndfile-dir or --with-sndfile-lib and --with-sndfile-include
  options to extconf. If there are spaces in the path on windows, it may not work.

Gem files will remain installed in /Users/thisuser/.bundler/tmp/5253/gems/ruby-audio-1.6.1 for inspection.
Results logged to /Users/thisuser/.bundler/tmp/5253/gems/ruby-audio-1.6.1/ext/rubyaudio_ext/gem_make.out
An error occured while installing ruby-audio (1.6.1), and Bundler cannot continue.
Make sure that `gem install ruby-audio -v '1.6.1'` succeeds before bundling.

老实说,我不知道该怎么办。谷歌搜索显示与 mysql gem 相同的错误,并且解决方案是 mysql 特定的。

有人偶然发现过这个吗?如果没有,有没有办法明确告诉 Rails 忽略该 gem?从 gem 文件中删除它并运行bundle install再次没有成功。

谢谢你的帮助!

Edit

运行后brew install libsndfile我得到以下输出:

Warning: Your Xcode (4.5.2) is outdated
Please install Xcode 4.6.
==> Downloading http://www.mega-nerd.com/libsndfile/files/libsndfile-1.0.25.tar.gz
Already downloaded: /Library/Caches/Homebrew/libsndfile-1.0.25.tar.gz
==> Patching
patching file programs/sndfile-play.c
==> ./configure --prefix=/usr/local/Cellar/libsndfile/1.0.25
==> make install
make[1]: *** [sndfile-play.o] Error 1
make[1]: *** Waiting for unfinished jobs....
brew: superenv removed: -g -O2 -Wall -Wextra -Wdeclaration-after-statement -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wcast-align -Wcast-qual -Wnested-externs -Wbad-function-cast -Wwrite-strings -Wundef
brew: superenv removed: -g -O2 -Wall -Wextra -Wdeclaration-after-statement -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -Wcast-align -Wcast-qual -Wnested-externs -Wbad-function-cast -Wwrite-strings -Wundef
make: *** [install-recursive] Error 1
Your Xcode and or CLT are mis-configured. Try some or all of the following:
    xcrun --kill-cache
    xcodebuild -license
    sudo xcode-select -switch /path/to/Xcode.app

我尝试了所有建议的命令 - 无济于事。我还能做什么来解决这个问题?


所以,我们让它一起工作,我想我应该分享我必须采取的步骤来完成这项工作。感谢所有评论的人!

  1. 问题是安装gem时找不到libsndfile
  2. 要安装它,我必须运行brew install libsndfile(如果你还没有的话,请先安装自制程序),这不起作用,所以我不得不......
  3. ...将 Xcode 更新到最新版本并安装 Xcodes 命令行工具(不要问我为什么,但我不得不这样做。)
  4. 然后我跑了brew install libsndfile,这有效
  5. 最后但并非最不重要的一点是我跑了bundle install再次,终于安装了所需的 gem。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Gem 安装 ruby​​-audio 失败 的相关文章

随机推荐

  • 如何在 LIBGDX 游戏中完全禁用多窗口支持

    我在渲染线程中分配了很多内存 并且我已经traced多窗口支持的原因很奇怪 因为我有我的手机禁用了此功能 我已将以下内容添加到 AndroidManifest 基于this 应用程序标记内的代码 但运气不好 我仍然得到不需要的内存分配 仅当
  • JSON.stringify 大对象优化

    我想使用以下方法将大型 JSON 对象转换为字符串JSON stringify 但由于对象的大小 我得到了一个错误 lt Last few GCs gt 20817 0x2cc2830 295727 ms Scavenge 1335 8 1
  • XmlElement 的 Xml 签名无法验证

    我提前为相当长的代码块表示歉意 但这是我可以生成的最小的可编译示例 我已经省略了原始代码中的所有错误检查 我正在使用 Visual Studio 2012 和 NET 4 5 尽管这对于 4 5 来说并不是什么新鲜事 但它应该适用于任何版本
  • Linux bash:多变量赋值

    Linux bash 中是否存在类似于 PHP 中的以下代码的内容 list var1 var2 var3 function that returns a three element array 即 您在一个句子中为 3 个不同的变量分配了
  • 使用 addEventListener 添加带有参数的回调

    我正在使用画布创建拖放系统 canvas addEventListener mousedown function window initialClickX mouse x window initialClickY mouse y windo
  • 循环遍历 CSV 文件并使用 while read? 创建新的 csv 文件

    I have while read field1 field2 field3 field4 do trimmed field2 sed s g echo trimmed field3 gt gt new csv done lt FEEDS
  • SQL:将 ISNULL 与动态枢轴结合使用

    我想让枢轴产生的所有 NULL 值都变成 0 我已经将 ISNULL 放置在每个可以想象到的地方 但似乎没有任何效果 枢轴与 ISNULL 兼容吗 代码如下 DECLARE startDate datetime SET startDate
  • 笔记数据库检索条件

    有了这个代码 Set col db Search Form formname id 212 time 0 例如 我明确给出搜索函数 212 但是如果我想给出一个变量怎么办 dim var as Integer 我的搜索会是什么样子 因为这不
  • 如何通过运行应用程序在 Tomcat 上部署 Web 应用程序

    我想开发更新程序应用程序 可以说我有 运行Tomcat 在 Tomcat 上运行更新程序应用程序 在同一个 Tomcat 上运行旧版本的应用程序 我想 停止旧应用程序 取消部署旧应用程序 部署新版本的应用程序 假设我在更新程序应用程序资源中
  • 当我在棒棒糖 5.1 中单击浏览器上的共享时,我的应用程序不显示

    当您单击任何网络链接上的共享时 我尝试打开我的应用程序 我该怎么做 我需要广告任何许可吗 我已添加下面的代码 但我在共享列表中没有看到我的应用程序 我怎样才能让它发挥作用 我真的很感谢任何帮助 显现
  • 自定义注释 JSF

    我想制作自定义注释来检查 JSF Web 应用程序某些功能的安全性 为了安全起见 我将 Tomcat 安全性与 JaaS 结合使用 因此我没有可用的应用程序管理安全性 实际上想要做的是在 Spring Security Secured ro
  • 如果无法继承QSlider,如何为滑块添加刻度线

    我有一个 Qt 对话框 里面有一个滑块 当对话框初始化时 滑块将被设置一个值 为了提醒用户默认值是什么 我想给滑块添加一个标记 只需在手柄上方画一条线或一个三角形即可 这里 滑块应该是QSlider类型 这意味着我无法实现从QSlider派
  • Neo4j 强制索引的问题

    我遇到了一个问题 我在 Cypher 批量查询中强制使用索引 UNWIND rows AS row MATCH s Entity USING INDEX s Entity uuid WHERE s uuid row source MATCH
  • 如何在postgresql中查找任意大小的数组的所有组合(子集)[重复]

    这个问题在这里已经有答案了 给定一个数组 如何在 postgresql 中查找特定大小的元素的所有组合 子集 例如 给定一个数组 1 2 3 4 大小为 3 的所有组合都是 1 2 3 1 2 4 1 3 4 2 3 4 组合中的顺序并不重
  • NSURLSession:如何增加 URL 请求的超时时间?

    我正在使用iOS 7的新功能NSURLSessionDataTask检索数据如下 NSURLSession session NSURLSession sharedSession NSURLSessionDataTask dataTask s
  • 游戏中的卡牌等级

    我是一名 Java 初学者 因此 任何帮助将不胜感激 我设计了一个卡片类和甲板类 我将在我创建的游戏中使用它们 到目前为止 我的游戏似乎运行得很好 但问题出在我的 Cards 类上 我想利用 getRank 方法为玩家拥有的牌 无论花色如何
  • 如何在数据表列标题的过滤框中添加占位符文本

    我有一个素数面孔数据表 其中只有几列 并且所有列都有 filteryBy 属性 如何添加占位符或水印来为用户提供提示 任何建议 将不胜感激
  • 函数数组<可选> -> 可选<数组>

    这是我想做的 extension Array
  • Woocommerce 禁用自动订单状态更改挂起->处理

    我想禁用这个选项 每当有人在我的网站上制作和订购并且付款成功时 订单状态会自动从待处理 但是 我不想要此功能已启用 相反 我想在处理订单时手动执行此操作 我在 woocommerce 中发现了此功能 这使得此功能成为可能 我不想直接在那里更
  • Gem 安装 ruby​​-audio 失败

    我已经克隆了一个现有的存储库并且现在正在运行bundle install 由于某种原因 它在 ruby audio gem 上失败了 Installing ruby audio 1 6 1 with native extensions Ge