xcode 无法让 CocoaPods 工作

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/25011418/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-15 05:17:57  来源:igfitidea点击:

Can't get CocoaPods working

rubyxcodecocoapodsxcode6osx-yosemite-beta

提问by Maxim Chetrusca

I installed CocoaPods and it says Successfully installed cocoapods-0.33.1, but whatever I would try to do with podcommand, like pod install, I get the following console output:

我安装了 CocoaPods 并显示Successfully installed cocoapods-0.33.1,但是无论我尝试使用pod命令做什么,例如pod install,我都会得到以下控制台输出:

Max$ pod install
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load such file -- xcodeproj/prebuilt/universal.x86_64-darwin14-2.0.0/xcodeproj_ext (LoadError)
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Library/Ruby/Gems/2.0.0/gems/xcodeproj-0.17.0/lib/xcodeproj/ext.rb:6:in `rescue in <top (required)>'
from /Library/Ruby/Gems/2.0.0/gems/xcodeproj-0.17.0/lib/xcodeproj/ext.rb:3:in `<top (required)>'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Library/Ruby/Gems/2.0.0/gems/xcodeproj-0.17.0/lib/xcodeproj.rb:30:in `<top (required)>'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.33.1/lib/cocoapods.rb:2:in `<top (required)>'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/rubygems/core_ext/kernel_require.rb:55:in `require'
from /Library/Ruby/Gems/2.0.0/gems/cocoapods-0.33.1/bin/pod:32:in `<top (required)>'
from /usr/bin/pod:23:in `load'
from /usr/bin/pod:23:in `<main>'

I am using Mac OS 10.10 (Yosemite beta version) and Xcode 6.0 beta2, but I think back when I used Mavericks and Xcode 5.1.1 I had the same problem.

我使用的是 Mac OS 10.10(Yosemite beta 版)和 Xcode 6.0 beta2,但我回想在使用 Mavericks 和 Xcode 5.1.1 时遇到了同样的问题。

回答by Maxim Chetrusca

I finally solved my problem.

我终于解决了我的问题。

Short answer:

简答:

I had to install ruby 2.1.2, then reinstall cocoapods and everything worked.

我必须安装 ruby​​ 2.1.2,然后重新安装 cocoapods,一切正常。

Long answer:

长答案:

  1. Resolve all warnings from brew doctor;
    • remove unused libraries;
    • remove MacPorts;
    • resolve additional warnings which I already do not remember;
    • I might even reinstalled brew.
  2. Install rvm;
  3. Install & use ruby 2.1.2 using rvm;
    • rvm requirementscomplains about many missing packages, install them;
    • among them, there is gcc46, which I was unable to install. After Xcode 4.2 or something, command line tools come without gcc. So if rvm requirementsdoes not find one, it suggests gcc46. But the point is, installing brew install apple-gcc42solves the problem. rvm requirementsstops complaining and you can install ruby 2.1.2:
    • rvm install 2.1.2;
    • rvm use 2.1.2;
  4. Install cocoapods, as suggested in @Varsha Vijayvargiya's answer.
  1. 解决所有警告brew doctor
    • 删除未使用的库;
    • 删除 MacPorts;
    • 解决我已经不记得的其他警告;
    • 我什至可能重新安装 brew。
  2. 安装rvm
  3. 使用 rvm 安装和使用 ruby​​ 2.1.2;
    • rvm requirements抱怨许多丢失的软件包,安装它们;
    • 其中有gcc46,我无法安装。在 Xcode 4.2 或其他版本之后,命令行工具没有 gcc。因此,如果rvm requirements没有找到,则建议使用 gcc46。但关键是,安装brew install apple-gcc42解决了问题。rvm requirements停止抱怨,您可以安装 ruby​​ 2.1.2:
    • rvm install 2.1.2;
    • rvm use 2.1.2;
  4. 按照@Varsha Vijayvargiya 的回答中的建议安装 cocoapods 。

I might forgot something, so if you have any questions - ask. Here are some links which helped me:

我可能忘记了一些东西,所以如果你有任何问题 - 问。以下是一些对我有帮助的链接:

回答by Varsha Vijayvargiya

-- Open Xcode 6

-- 打开 Xcode 6

-- Open Preferences

-- 打开首选项

-- click on Locations tab

-- 单击位置选项卡

-- Change the Command Line Tools version to Xcode 6.0

-- 将命令行工具版本更改为 Xcode 6.0

-- Uninstall cocoapods

-- 卸载 cocoapods

    $ sudo gem uninstall cocoapods

-- Install xcodeproj

-- 安装 xcodeproj

     $ sudo gem install xcodeproj

-- Install cocoapods

-- 安装 cocoapods

     $ sudo gem install cocoapods

-- Run pod.

-- 运行吊舱。

回答by Stéphane Bruckert

You most probably missed a step, but it's not your fault.

您很可能错过了一步,但这不是您的错。

  1. sudo gem install cocoapods
  2. pod setup<–- this is not specified by the doc even though it's vital
  3. pod install
  1. sudo gem install cocoapods
  2. pod setup<-- 这不是文档指定的,即使它很重要
  3. pod install

回答by liuxiaojun

First warning says that you've insecure permissions for your bin directory:

第一个警告表示您的 bin 目录权限不安全:

local:Documents liuxiaojun$ gem update --system /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: warning: Insecure world writable dir /usr/bin in PATH, mode 040777 Updating rubygems-update Successfully installed rubygems-update-2.4.3 Parsing documentation for rubygems-update-2.4.3 Installing RubyGems 2.4.3 /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: warning: Insecure world writable dir /usr/bin in PATH, mode 040777 /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: warning: Insecure world writable dir /usr/bin in PATH, mode 040777 ERROR: While executing gem ... (Errno::EACCES) Permission denied - /Library/Ruby/Site/2.0.0/gauntlet_rubygems.rb

local:Documents liuxiaojun$ gem update --system /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: 警告:不安全的世界可写dir /usr/bin in PATH, mode 040777 更新 ruby​​gems-update 成功安装 ruby​​gems-update-2.4.3 解析文档 ruby​​gems-update-2.4.3 安装 RubyGems 2.4.3 /System/Library/Frameworks/Ruby.framework/Versions /2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: 警告:不安全的世界可写目录 /usr/bin in PATH,模式 040777 /System/Library/Frameworks/Ruby.framework/Versions /2.0/usr/lib/ruby/2.0.0/universal-darwin14/rbconfig.rb:213: 警告:PATH 中不安全的世界可写目录 /usr/bin,模式 040777 错误:执行 gem 时 ... (Errno:: EACCES) 权限被拒绝 - /Library/Ruby/Site/2.0.0/gauntlet_rubygems.rb

========== brew install ruby OK

========== brew install ruby​​ OK

回答by Allen

See https://github.com/CocoaPods/CocoaPods/issues/2219

https://github.com/CocoaPods/CocoaPods/issues/2219

Or check that if you have multi ruby versions in your system:rbenv versions, and try rbenv global 1.9.xto change your ruby version for installing.

或者检查您的系统中是否有多个 ruby​​ 版本:rbenv versions,并尝试rbenv global 1.9.x更改您的 ruby​​ 版本以进行安装。

回答by kenorb

First warning says that you've insecure permissions for your bin directory:

第一个警告表示您的 bin 目录权限不安全:

warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777

See: warning: Insecure world writable dir /usr/local/bin in PATH, mode 040777

请参阅:警告:路径中不安全的世界可写目录 /usr/local/bin,模式 040777

You can fix it via (you need root credentials):

您可以通过(您需要根凭据)修复它:

sudo chmod go-w /usr/local/bin

The error 'require': cannot load such fileindicates that you some missing or broken gem package. You can probably fix it by re-installing cocoapods:

该错误'require': cannot load such file表明您缺少或损坏了一些 gem 包。您可以通过重新安装 cocoapods 来修复它:

gem uninstall cocoapods # Follow by sudo if necessary
gem install cocoapods --verbose # Follow by sudo if necessary

And make sure that your xcodeproj is present:

并确保您的 xcodeproj 存在:

gem install xcodeproj --verbose # Follow by sudo if necessary

回答by panchicore

my experience: I had the same error after upgrading to Yosemite, I just did a "gem update" and it worked.

我的经验:升级到优胜美地后我遇到了同样的错误,我只是做了一个“宝石更新”并且它起作用了。