安装cocoapods时出错

时间:2013-12-02 14:16:09

标签: ruby gem cocoapods

这是错误:

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

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/include/ruby.h


Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/json-1.8.1 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/gems/json-1.8.1/ext/json/ext/generator/gem_make.out

我在google上搜索过去7个小时,我找不到适合我的解决方案。 我已经尝试过所有这些

请帮帮我

编辑: *安装RVM后我会得到同样的错误

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

    /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/include/ruby.h


Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/json-1.8.1 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/gems/json-1.8.1/ext/json/ext/generator/gem_make.out

使用此命令行:sudo gem install cocoapods

2 个答案:

答案 0 :(得分:0)

您使用的是Mac OS。得到:

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/include/ruby.h

您正在尝试将宝石安装到您的系统Ruby中,这是由Apple安装使用的。

不要这样做。

相反,使用rbenvRVM在单独的沙箱中管理/安装Rubies,您可以自由地折叠/转动/毁坏您的心脏内容。

如果您选择RVM,请在开始之前阅读 ENTIRE 安装说明*。 RVM的功能非常全面,而且非常灵活,而且这些产品的价格是额外的"选项" (AKA"复杂性")安装时。以单用户身份进行,不要使用sudo,你应该没事。

我们可以依靠Apple的系统安装Ruby,但除非你真正理解你在做什么,否则不要修改它。上面的错误让我觉得情况并非如此。

要安装除Apple预装的Ruby之外的其他Ruby,很可能您需要当前的Xcode以及命令行扩展。这将提供编译本机扩展所需的工具,以及所需的所有头文件:

答案 1 :(得分:0)

通常建议人们在安装CocoaPods之前安装类似rvm或rbenv的东西。作为CocoaPods背后的开发人员之一,我想说除非你打算自己做红宝石工作,否则你不必做任何其他事情。如果你只是想让CocoaPods工作,那就不需要ruby管理器的所有开销了。

引用CocoaPods guides

  

CocoaPods是用Ruby构建的,可以用它安装   OS X上可以使用默认的Ruby。您可以使用Ruby版本管理器,   但是我们建议您使用OS X上提供的标准Ruby   除非你知道你在做什么。

     

使用默认的Ruby安装将需要您在何时使用sudo   安装宝石。 (这只是宝石持续时间的一个问题   但是安装。)

$ sudo gem install cocoapods