2014-01-23 110 views
1

我已按照http://guides.cocoapods.org/using/getting-started.html#getting-started上的说明使用--user-install选项(为了避免必须使用sudo进行安装)在OS X Mavericks上安装了Cocoapods。我还创建了一个.profile文件在我的主目录下:Cocoapods用户安装:无法运行pod命令

export GEM_HOME=$HOME/gems 
export PATH=$GEM_HOME/bin:$PATH 

的CocoaPods安装成功,但我无法运行pod命令。

从命令行运行时,它说No such file or directory。据我所知,它应该被安装到/Users/me/gems/bin文件夹中。但是,该文件夹根本不存在 - 我的主目录中唯一一个与Ruby相关的文件夹是/Users/me/.gem

我试图运行/Users/me/.gem/ruby/2.0.0/gems/cocoapods-0.29.0/bin/pod但导致以下错误:

/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require': cannot load such file -- bundler/setup (LoadError) 
    from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:45:in `require' 
    from .gem/ruby/2.0.0/gems/cocoapods-0.29.0/bin/pod:14:in `<main>' 

...但是从我个人理解,我不应该从该位置直接运行它。

任何帮助Cocoapods新手赞赏!

回答

3

因此经过大量的研究和尝试不同的事情,我设法得到这个工作。我不太清楚什么最终解决了问题,或者它是否是一个事物的组合,但对于其他人在这里遇到同样的问题是我所做的:

  1. 安装Xcode的命令行小牛工具。 Xcode 5中不再提供安装此选项的功能,因此您需要从https://developer.apple.com/downloads下载它们。有些人似乎说他们已经作为Xcode 5的一部分从Mac App Store安装,而其他人则说你需要手动安装它们。无论哪种方式,我认为再次安装它们不会造成伤害。

  2. 上面的错误消息提到无法加载bundler/setup。所以,我(重新)安装了捆绑软件宝石gem install bundler --user-install。有趣的是,当我然后试图再次运行/Users/me/.gem/ruby/2.0.0/gems/cocoapods-0.29.0/bin/pod命令时,我得到了另一个错误:/Users/me/.gem/ruby/2.0.0/gems/cocoapods-0.29.0/Gemfile not found

  3. 真的很方便的是,安装bundler后出现一条消息0123'。所以,我检查了该文件夹的内容,它包含pod可执行文件!将它添加到PATH当然会很方便,但我只是直接用完整路径运行它(在更改为包含Podfile的我的Xcode项目文件夹之后):/Users/me/.gem/ruby/2.0.0/bin/pod install,它一切正常!

当我跑pod install首次它显示一个消息说Setting up CocoaPods master repo,并在那里呆了很长一段时间 - 我认为它实际上已经挂。但是,它最终完成了。如果您不确定它是否在做任何事情,或者已经挂起,请执行ls -la ~/.cocoapods/repos/master/.git/objects/pack/并查看正在下载的文件的修改时间/大小(感谢提示this comment)。

新玩家的另一个提示 - 当我试图安装一个吊舱(在我的情况下,BlocksKit)我收到一条消息说[!] The platform of the target Pods (iOS 4.3) is not compatible with BlocksKit (2.1.0) which has a minimum requirement of OS X 10.7 - iOS 5.0.这是一个令人惊讶的消息,因为我的项目的目标是iOS 7.0。显然你don't need to specify the platform了,所以我完全删除了从Podfile平台线,它的一切正常。

希望这可以帮助其他人开始使用CocoaPods!

+1

简短版本:** pod **位于〜/ .gem/ruby​​/2.0.0/bin /中。请直接在您的命令中引用它,或将其添加到路径 – Marmoy

0

FWIW - 我遇到了非常类似的问题。以上都没有帮助我,所以也许其他人可以从我的过程中受益。

  1. 最后只是跑sudo gem uninstall cocoapods,删除了我以前做过的所有事情。
  2. 按照创建.profile文件的步骤
  3. 为了好的措施,关闭终端并重新启动所有设备。
  4. gem install cocoapods这在某种程度上并没有遇到错误此时
  5. 经过运行gem which cocoapods所幸返回正确路径
  6. pod setup它没有再提出任何错误的安装。

不完全确定什么是实际工作,什么都没有,但也许有人会觉得这有用。

1

安装小牛后,我得到了已安装cocoapods的错误。所以我运行这个命令来安装新的更新的cocoapods版本,现在它工作。

sudo gem install cocoapods

+0

OP指定它们使用--user-install选项,当您不能/不会使用sudo时使用该选项 – Marmoy

1

由于在这些答案中的指针,我发现,设在的CocoaPods网站上instructions for installing CocoaPods是不正确的,关于.profile文件的内容,具体的路径。

由于Skoota在问题中提到,路径$GEM_HOME/bin不存在。 Videre的评论给出了重要的线索:正确的路径是$GEM_HOME/ruby/2.0.0/bin

正确.profile内容,这对我的作品,至少是:

export GEM_HOME=$HOME/.gem 
export PATH=$GEM_HOME/ruby/2.0.0/bin:$PATH 

这也是值得注意的是,您必须退出并重新更改终端应用程序的.profile文件生效。