运行 pod 设置给我"bad interpreter: No such file or directory"错误



最近我尝试做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 initpod --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 开发环境涉及六个步骤:

    安装
  1. Homebrew(还会安装必备的 Apple 命令行工具(
  2. 安装Ruby管理器(如chruby,rbenv,asdf,RVM( - 其中大多数都可以使用Homebrew安装
  3. 通过向 shell 文件(~/.bash_profile~/.zshrc(添加适当的行来配置 Ruby 管理器 - 每个管理器都有执行此操作的说明,这是人们错过的典型步骤
  4. 重新启动终端(或打开一个新选项卡(以使 shell 更改生效 - 这是另一个经常被忽视的步骤
  5. 使用 Ruby
  6. 管理器安装特定版本的 Ruby
  7. 使用 Ruby
  8. 管理器切换到该版本的 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升级到蒙特雷后发生错误(。 重新安装需要一点时间,但它有效

相关内容

最新更新