当前位置: 首页 > 知识库问答 >
问题:

使用gem安装cocoapod时出错

朱华皓
2023-03-14

我正在使用macOS Mojave,当我尝试使用gem安装CoCoapod时,我得到了以下错误。

构建本机扩展。这可能需要一段时间。。。错误:安装cocoapods时出错:错误:无法生成gem本机扩展。

current directory: /Library/Ruby/Gems/2.3.0/gems/ffi-1.12.2/ext/ffi_c

/系统/库/框架/Ruby。framework/Versions/2.3/usr/bin/ruby-r/站点Conf20200302-707-1iveybq。rb extconf。rb mkmf。rb在/System/Library/Frameworks/ruby中找不到ruby的头文件。framework/Versions/2.3/usr/lib/ruby/include/ruby。H

extconf失败,退出代码1

宝石文件将继续安装在 /Library/Ruby/Gems/2.3.0/gems/ffi-1.12.2进行检查。结果登录到 /Library/Ruby/Gems/2.3.0/extensions/universal-darwin-18/2.3.0/ffi-1.12.2/gem_make.out

当我运行以下命令时,会出现此错误。

sudo gem install cocoapods

sudo gem install -n /usr/local/bin cocoapods

我已经安装了xcode命令行工具,当我运行xcode选择--install

xcode选择:错误:命令行工具已安装,请使用“软件更新”安装更新

我还同意了xcode许可协议与命令sudo xcodebuild许可证

/Library/Ruby/Gem/2.3.0/扩展/Universal al-darwin-18/2.3.0/ffi-1.12.2/gem_make.out中的错误日志给出了以下内容

当前目录:/Library/Ruby/Gems/2.3。0/gems/ffi-1.12。2/ext/ffi_c/System/Library/Frameworks/Ruby。framework/Versions/2.3/usr/bin/ruby-r/siteco$mkmf。rb在/System/Library/Frameworks/ruby中找不到ruby的头文件。fra$

extconf失败,退出代码1

如何解决此问题?

共有3个答案

吕霍英
2023-03-14

对我来说,使用命令sudogem安装cocoapods-v1.8。4而不是sudo gem安装cocoapods

参考:https://github.com/CocoaPods/CocoaPods/issues/9568#issuecomment-599235420

花飞扬
2023-03-14
sudo xcode-select --switch /Library/Developer/CommandLineTools

ruby -rrbconfig -e 'puts RbConfig::CONFIG["rubyhdrdir"]'
孔星宇
2023-03-14

这个问题的答案可以在这里找到,尽管它与这个问题无关。下面是最有效的答案片段。

对于macOS 10.14上的Xcode 11,即使在安装Xcode和安装命令行工具并接受以下许可证后,也可能发生这种情况

sudo xcode-select --install
sudo xcodebuild -license accept

问题是Xcode 11提供了macOS 10.15 SDK,其中包括ruby2.6的头,但不包括macOS 10.14的ruby2.3的头。你可以通过运行来验证这是你的问题

ruby -rrbconfig -e 'puts RbConfig::CONFIG["rubyhdrdir"]'

在macOS 10.14和Xcode 11上打印不存在的路径

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/include/ruby-2.3.0

但是,Xcode 11在/Library/Developer/CommandLineTools/SDKs/MacOS10中安装了macOS 10.14 SDK。14.sdk。没有必要像其他答案中建议的那样,通过安装旧的头文件来污染系统目录。相反,通过选择该SDK,选择适当的ruby2。将找到3个标题:

sudo xcode-select --switch /Library/Developer/CommandLineTools
ruby -rrbconfig -e 'puts RbConfig::CONFIG["rubyhdrdir"]'

现在应该可以正确打印

/Library/Developer/CommandLineTools/SDKs/MacOSX10.14.sdk/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/include/ruby-2.3.0

同样地,gem安装应该在选择SDK时工作。

要切换回使用当前的Xcode 11 SDK,请使用

sudo xcode-select --switch /Applications/Xcode.app
 类似资料:
  • 在更换SSD后,我试图在MacBook air中重新安装,现在我收到以下错误。 构建本机扩展。这可能需要一段时间。。。错误:安装cocoapods时出错:错误:无法生成gem本机扩展。 /系统/库/框架/Ruby。framework/Versions/2.3/usr/bin/ruby-r/站点Conf20200308-27204-6l0a5q。rb extconf。rb mkmf。rb在/Syst

  • 我正在尝试安装rails,收到以下错误: 我见过类似的问题被问和回答,但似乎没有解决我的问题

  • 问题内容: 我正在尝试安装使用gem的开源Rails 3.2.21应用程序,但是当我尝试运行命令时,出现以下错误: 我尝试卸载通过自制软件安装的每个版本的I,然后重新安装它们,如下所示: 然后运行: 正如此处提出的许多类似问题所建议的那样,但仍然导致与上述相同的错误。 请有人可以提供有关如何启动和运行该产品的指导吗? 问题答案: 错误日志显示: 因此,您需要安装: 正如评论中指出的那样,可能需要将

  • 我试图在mac os x lion上安装datamapper gem,但在安装sqlite适配器时无法构建gem本机扩展(请参阅下面的终端输出)。我从谷歌和其他堆栈溢出问题中找到的两个解决方案是使用sudo或安装Xcode,但我已经在使用sudo,并在应用商店中安装了Xcode 4.3.3。 sudo gem install dm sqlite适配器密码:构建本机扩展。这可能需要一段时间。。。错误

  • 我在安装ruby gem时遇到这个错误!我试图找到gem源文件,但没有用!你能告诉我如何在我的计算机上安装这些证书吗?

  • 问题内容: 我正在尝试通过Bundler 安装gem,但是它一直死于以下错误: 我通过谷歌搜索发现的大多数事情都建议传递参数来修复它。因此,基于: 我将以下内容添加到Bundler的配置中: 但是,仍然没有运气-与上述相同。 因为它快死于错误了,所以我检查了一下,并且据说它在附近,只是Bundler找不到。 有什么想法吗? 问题答案: 答案与Wrikken发布的答案相似-这是我为将来的读者而修复的