如何使 CocoaPods 项目在 OS X El Capitan 和 Xcode 7 Beta 上运行?

Posted

技术标签:

【中文标题】如何使 CocoaPods 项目在 OS X El Capitan 和 Xcode 7 Beta 上运行?【英文标题】:How to make a CocoaPods project work on OS X El Capitan & Xcode 7 Beta? 【发布时间】:2015-06-09 00:13:04 【问题描述】:

我已更新到今天发布的 OS X El Capitan 和 Xcode 7 Beta,由于新的 Swift 语法要求,现在我的 CocoaPods 项目不再工作。自动 Xcode 项目更新会破坏代码。有没有人已经想通了?谢谢。

【问题讨论】:

【参考方案1】:

在 this guide 之后在 El Capitan 10.11 上运行 Cocoapods 时,它为我解决了这个错误:

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

gem install cocoapods

【讨论】:

谢谢!由于 SIP (arstechnica.co.uk/apple/2015/09/…) 添加了“功能”,这完全可以让 cocoapods 在 10.11/El Capitan 上工作。一个直接的“sudo gem install cocoapods”尝试安装到 /usr/bin,它不再可写甚至 root 虽然它实际上不是原始问题的答案,但它确实帮助我解决了 El Capitan 中的 Pods 问题,谢谢伙计! sudo chmod -R 755 /usr/local/bin 之后运行这个 @CanAksoy 我不需要使用你的命令,它仍然有效。这是什么意思?好点了吗? @huync 没有 chmod 我无法解决。尝试 chmod,如果“gem install”没有解决您的问题。【参考方案2】:

在 Cocoapods 支持 Swift 2 之前,至少您应该能够继续使用 Xcode 6,直到它支持为止。如果 Xcode 7 已经在你的 Cocoapods 上踩过,这个链接告诉你如何清理它https://gist.github.com/mbinna/4202236。

基本上,在任何使用 Cocoapods 的项目中:

rm -rf "$HOME/Library/Caches/CocoaPods"
rm -rf "`pwd`/Pods/"
pod update

然后使用 Xcode 6 重建,一切都应该恢复正常。

【讨论】:

CocoaPods 不绑定到任何特定的 Swift 版本,因此这种解释是不正确的。实际问题出在您使用的 Pod 上,需要更新这些 Pod 以适应更新后的 Swift 语法。【参考方案3】:

我这样做是为了让它对我有用:

brew install ruby
/usr/local/bin/gem install cocoapods

【讨论】:

是的,更新 Cocoapods 有帮助。似乎 Cocoapods 现在支持 Xcode7【参考方案4】:

禁用系统完整性保护对我有用。

按照以下步骤禁用 SIP:

重新启动您的 Mac。 在 OS X 启动之前,按住 Command-R 并一直按住它,直到您看到 Apple 图标和进度条。释放。这将引导您进入恢复。 从实用程序菜单中,选择终端。 在提示符下键入以下内容,然后按 Return:csrutil disable 终端应显示 SIP 已禁用的消息。 从  菜单中,选择重新启动

【讨论】:

以上是关于如何使 CocoaPods 项目在 OS X El Capitan 和 Xcode 7 Beta 上运行?的主要内容,如果未能解决你的问题,请参考以下文章

最新Mac OS X 10.12.1 安装cocoapods及使用详解

如何在Mac OS X上安装 Ruby运行环境

OS X10.12上安装cocoapods

OS X 10.11 CocoaPods 的安装流程

如何使安装了 CocoaPods 的 pod 可用于我工作区中的所有项目?

PDOException 在 Mac OS X El Capitan 上找不到使用 XAMPP laravel 项目和 postgresql 的驱动程序