最近我尝试做pod setup
,但出现此错误:
-bash: /usr/local/bin/pod: /usr/local/opt/ruby/bin/ruby: bad interpreter: No such file or directory
我按照Ray Wenderlich的指南安装了CocoaPods,我遇到了这个问题,所以我不知道发生了什么。
我在升级到Mac OS High Sierra时遇到了这个问题。
这是我的解决方法:
sudo gem install cocoapods
我在Github上的CocoaPods问题列表中找到了这个答案。
当我升级到卡塔利娜时,就会发生这种情况。我通过运行解决了它:
sudo gem install -n /usr/local/bin ruby
sudo gem install -n /usr/local/bin cocoapods
升级到High Sierra后,我遇到了同样的错误,只是重新安装了cocoapods
sudo gem install -n /usr/local/bin cocoapods
当我将系统从 Sierra
更新到 Mojave.
时,我遇到了同样的问题 也适用于卡特琳娜
以下步骤有效:
sudo gem update --system
sudo gem install -n /usr/local/bin cocoapods
我从以下链接获得了帮助。
brew link --overwrite cocoapods
这句话拯救了我的一天。
我通过运行brew install ruby
来修复它
以下内容对我有用:
在 XCode 中选择"命令行工具"。
XCode > Preferences > Locations > Command Line Tools > XCode 11.X.X In terminal execute: sudo gem install cocoapods -n /usr/local/bin
https://stackoverflow.com/a/60464653
当我尝试再次安装时,我收到另一个错误,说
错误:执行 gem 时...(gem::FilePermissionError( 您没有/Library/Ruby/Gems/2.3.0 目录的写入权限。
然后我这样做并且工作得很好。
sudo gem uninstall cocoapods
sudo gem install cocoapods
在我的Mac上,这解决了这个问题:
brew uninstall cocoapods
brew install cocoapods
从OS X Mojave升级到OS X Catalina后,我在运行pod init
或pod --version
时收到以下消息: -bash: /Users/mangolassi/.gem/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby: bad interpreter: No such file or directory
我不喜欢sudo gem install cocoapods
的想法,所以我在我的用户目录中有我的 .cocoapods 文件夹,并且我已经修改了我的.bash_profile以指向它。 我收到的错误是因为 2.3 版在此文件中进行了硬编码: /Users/eric/.gem/bin/pod
和卡塔琳娜的成绩是2.6。
使用 sudo install 可能会成功覆盖此文件,并且可能会成功覆盖,但我想保留我的原始设置。
我能够修改文件/Users/eric/.gem/bin/pod
的第一行 shebang 以使用2.6而不是2.3的路径,并且它起作用了。 整个更改是在我的追逐中将"3"更改为"6",因为版本仍然是"2"。
原始帖子中的错误是由于 Ruby 环境配置不正确造成的。你永远不应该使用sudo
来安装 gem,无论你在 Stack Overflow 上看到多少次它作为一个公认的答案。
概括地说,在 Mac 上设置适当的 Ruby 开发环境涉及六个步骤:
- 安装
- Homebrew(还会安装必备的 Apple 命令行工具(
- 安装Ruby管理器(如chruby,rbenv,asdf,RVM( - 其中大多数都可以使用Homebrew安装 。
- 通过向 shell 文件(
~/.bash_profile
或~/.zshrc
(添加适当的行来配置 Ruby 管理器 - 每个管理器都有执行此操作的说明,这是人们错过的典型步骤 - 重新启动终端(或打开一个新选项卡(以使 shell 更改生效 - 这是另一个经常被忽视的步骤 使用 Ruby
- 管理器安装特定版本的 Ruby 使用 Ruby
- 管理器切换到该版本的 Ruby
我个人的偏好是红宝石安装的红宝石。有关分步指南,请查看我在Mac上设置Ruby的详细教程。
for macos x catalina
尝试了大多数答案,但没有一个奏效。如果上述方法不起作用,请尝试打开 Xcode 首选项>位置>选择命令行工具到 Xcode。然后安装椰子荚
sudo gem install -n /usr/local/bin cocoapods
当我尝试使用以下方法升级可可豆荚版本时,我遇到了类似的问题:
brew upgrade cocoapods
为了解决这个问题,cocopaods 必须使用以下命令与 xcodeproj 链接:
brew link cocoapods
如果链接失败,那么您应该能够通过覆盖以前存在的链接来链接,如下所示:
brew link --overwrite cocoapods
修复
brew upgrade cocoapods
就我而言,上述方法均无效。我安装了 ruby 2.3.0,我不得不降级到 2.0.0:
gem update --system 2.0.0
"rubyist 批准"的方法是安装一个 ruby 版本管理器 (rbenv( 并通过它安装 cocoapods。弄乱sudo
和你的红宝石会导致眼泪。
找到 pod 文件。我的位于 usr/local/bin/pod
你会发现顶行显示版本2.3。将此文件编辑为正确的版本号。保存原件的副本,以防您搞砸它。
再次尝试与 Pod 相关的命令。
经过几天的尝试,为我工作了一切。
vi pod然后将 Ruby 路径 2.3 替换为 U 通过使用获得的路径终端中的哪个 ruby 命令然后做 pod 设置它会工作在尝试了所有列出的解决方案后,这对我有用。
Ruby解决我的情况(将Mac OS升级到蒙特雷后发生错误(。 重新安装需要一点时间,但它有效