运行pod设置给我"糟糕的解释器:没有这样的文件或目录"

use*_*235 121 ruby cocoapods podspec

最近尝试做了pod setup,我得到了这个:

-bash: /usr/local/bin/pod: /usr/local/opt/ruby/bin/ruby: bad interpreter: No such file or directory
Run Code Online (Sandbox Code Playgroud)

我按照Ray Wenderlich的指南安装了cocoapods,我得到了这个问题,所以我不知道发生了什么.

Tor*_*ley 354

升级到Mac OS High Sierra时遇到此问题.

这是我的修复:

sudo gem install cocoapods
Run Code Online (Sandbox Code Playgroud)

在Github的CocoaPods问题列表中找到了这个答案.

  • 不要忘记sudo:`sudo gem install cocoapods` (25认同)
  • 这为我在macOS Catalina上修复了它。谢谢 :) (8认同)
  • 这个为我修好了. (4认同)
  • 这也有助于Catalina。 (4认同)
  • 我遇到了同样的问题,并通过“ brew update”和“ brew upgrade”为我安装了最新的cocoapods,并完成了技巧 (2认同)
  • 如果这没有帮助,请尝试**重新启动**终端。 (2认同)

Sha*_* Ye 49

升级到High Sierra之后,我得到了同样的错误,只是重新安装了cocoapods

sudo gem install -n /usr/local/bin cocoapods
Run Code Online (Sandbox Code Playgroud)

  • 对于那些更新到卡塔琳娜州的人,这也是需要的。 (4认同)

Nir*_*aul 38

同样的问题,我面临当我从更新我们的系统Sierra,以Mojave.同样适用于卡特琳娜

以下步骤有效:

sudo gem update --system
sudo gem install -n /usr/local/bin cocoapods
Run Code Online (Sandbox Code Playgroud)

我从以下链接获得帮助。

  • 升级到Catalina后遇到相同的问题。这有帮助!在前面使用`Sudo`来获得写许可权。 (4认同)
  • 我在安装Catalina之后就到这里了。这很好。 (4认同)
  • 将 10.14 Mojave 更新到 10.15 Catalina 后为我工作 (2认同)

Ren*_*del 26

当我升级到Catalina时发生了这种情况。我通过运行解决了它:

sudo gem install -n /usr/local/bin ruby
sudo gem install -n /usr/local/bin cocoapods
Run Code Online (Sandbox Code Playgroud)

  • 这是我升级到 Catalina 后的解决方案。 (12认同)

小智 13

以下对我有用:

在 XCode 中选择命令行工具。

    XCode > Preferences > Locations > Command Line Tools > XCode 11.X.X

In terminal execute:

    sudo gem install cocoapods -n /usr/local/bin
Run Code Online (Sandbox Code Playgroud)

/sf/answers/4232525741/


use*_*235 12

我通过跑步来修理它 brew install ruby


Him*_*nth 6

当我尝试再次安装时,我又得到了另一个错误

错误:执行gem时...(Gem :: FilePermissionError)您没有/Library/Ruby/Gems/2.3.0目录的写权限.

然后我做了这个并且工作正常.

sudo gem uninstall cocoapods

sudo gem install cocoapods
Run Code Online (Sandbox Code Playgroud)


Sag*_*dir 6

在我的 Mac 上,这解决了问题:

brew uninstall cocoapods

brew install cocoapods
Run Code Online (Sandbox Code Playgroud)


Man*_*ssi 6

从 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而 Catalina 是 2.6 版。

使用 sudo install 可能会成功覆盖此文件,并且可能会成功,但我想保留我的原始设置。

我能够修改文件的第一个shebang行/Users/eric/.gem/bin/pod以使用2.6而不是2.3的路径并且它起作用了。整个更改是在我的追逐中将“3”更改为“6”,因为版本仍然是“2”。


Gay*_*ppu 5

适用于 MACOS X Catalina

尝试了大部分答案,但没有一个有效。如果上述方法不起作用,请尝试打开 Xcode 首选项 > 位置 > 选择 Xcode 的命令行工具。然后安装cocoapods

sudo gem install -n /usr/local/bin cocoapods
Run Code Online (Sandbox Code Playgroud)


mon*_*esh 5

原始帖子中的错误是由于 Ruby 环境配置不正确造成的。你永远不应该使用sudoinstall gems,无论你在 Stack Overflow 上看到多少次它作为可接受的答案。

概括地说,在 Mac 上设置合适的 Ruby 开发环境涉及六个步骤:

  1. 安装 Homebrew(还安装必备的 Apple 命令行工具)
  2. 安装 Ruby 管理器(例如 chruby、rbenv、asdf、RVM) - 其中大多数可以与 Homebrew 一起安装
  3. ~/.bash_profile通过将适当的行添加到 shell 文件(或)来配置 Ruby 管理器~/.zshrc- 每个管理器都会有执行此操作的说明,这是人们错过的典型步骤
  4. 重新启动终端(或打开新选项卡)以使 shell 更改生效 - 另一个经常被忽视的步骤
  5. 使用 Ruby 管理器安装特定版本的 Ruby
  6. 使用 Ruby 管理器切换到该版本的 Ruby

我个人偏好是chrubyruby​​-install。有关分步指南,请查看我在 Mac 上设置 Ruby 的详细教程