Ruby Mac/Xcode-吊舱安装,吊舱初始化,吊舱。。。“所有错误”;错误的解释器:没有这样的文件或目录;
我看到许多类似问题的实例与最近的Mac OS/xCode更新有关,其中提出了大量的解决方案,这些解决方案似乎经常起作用。到目前为止,没有人为我工作。这是我看到的 我有一个关于cocoapods的长期xCode项目。另一位开发人员在另一个系统上进行了一些更新,导致生成错误读取:Ruby Mac/Xcode-吊舱安装,吊舱初始化,吊舱。。。“所有错误”;错误的解释器:没有这样的文件或目录;,ruby,xcode,cocoapods,homebrew,Ruby,Xcode,Cocoapods,Homebrew,我看到许多类似问题的实例与最近的Mac OS/xCode更新有关,其中提出了大量的解决方案,这些解决方案似乎经常起作用。到目前为止,没有人为我工作。这是我看到的 我有一个关于cocoapods的长期xCode项目。另一位开发人员在另一个系统上进行了一些更新,导致生成错误读取: "The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation
"The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation."
当我使用终端尝试“吊舱初始化、吊舱更新、吊舱安装、吊舱去集成”时,我得到:
-bash: /usr/local/bin/pod: /System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby: bad interpreter: No such file or directory
我的机器上实际存在的Ruby版本是2.6,而不是2.3
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/bin/ruby:
我的计算机上没有位于的文件夹
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby:
$哪个ruby
说:/usr/bin/ruby
该文件确实存在
多个消息来源称,通过自制软件安装的ruby可在以下位置找到:
/usr/local/opt/ruby/bin/ruby
该位置当前没有Ruby的别名。
/usr/local/opt充满了文件夹别名,但没有“ruby”别名
我已删除并重新安装了xCode命令行工具,但当我尝试使用自制软件(brew医生、brew更新、brew升级等)执行任何基本操作时,会出现如下错误:
Mainframe:~ username$ brew -v
Homebrew 0.9.5
Mainframe:~ username$ brew upgrade
Traceback (most recent call last):
4: from /usr/local/Library/brew.rb:31:in `<main>'
3: from /usr/local/Library/Homebrew/os/mac.rb:15:in `version'
2: from /usr/local/Library/Homebrew/os/mac.rb:15:in `new'
1: from /usr/local/Library/Homebrew/os/mac/version.rb:24:in `initialize'
/usr/local/Library/Homebrew/version.rb:176:in `initialize': Version value must be a string (TypeError)
大型机:~username$brew-v
自制0.9.5
大型机:~username$brew升级
回溯(最近一次呼叫最后一次):
4:from/usr/local/Library/brew.rb:31:in`'
3:from/usr/local/Library/Homebrew/os/mac.rb:15:in'version'
2:from/usr/local/Library/Homebrew/os/mac.rb:15:in'new'
1:from/usr/local/Library/Homebrew/os/mac/version.rb:24:in'initialize'
/usr/local/Library/Homebrew/version.rb:176:在“初始化”中:版本值必须是字符串(TypeError)
所有这一切的开始(显然)是因为在其他开发者的机器上有些不同。我已经围绕这个问题转了好几天了,却一无所获
做了所有这些之后,我想问题就出在一开始的某个地方,我的机器在寻找一个不存在的Ruby 2.3,而不是确实存在的Ruby 2.6,但我不知道如何确定或者如何修复它
任何帮助都将不胜感激。解决方案:破解pod文件 简短版本: 1.)在usr/local/bin/pod打开文件 2.)将顶行中的2.3更改为2.6 长版本: 有一个可执行文件位于:usr/local/bin/pod 内容如下:
#!/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
#
# This file was generated by RubyGems.
#
# The application 'cocoapods' is installed as part of a gem, and
# this file is here to facilitate running it.
#
require 'rubygems'
version = ">= 0.a"
if ARGV.first
str = ARGV.first
str = str.dup.force_encoding("BINARY") if str.respond_to? :force_encoding
if str =~ /\A_(.*)_\z/ and Gem::Version.correct?($1) then
version = $1
ARGV.shift
end
end
load Gem.bin_path('cocoapods', 'pod', version)
我在以下位置打开文件:usr/local/bin/pod
并编辑第一行以将2.3更改为2.6
这产生了一些效果。现在,如果我将cd放入我的xcode项目并尝试运行“pod更新”,我会得到一个不同的错误
Mainframe:graffwriter username$ pod update
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin20/rbconfig.rb:229: warning: Insecure world writable dir /Users/pilotrase/bin/FDK/Tools/osx in PATH, mode 040777
Traceback (most recent call last):
2: from /usr/local/bin/pod:22:in `<main>'
1: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:262:in `bin_path'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:283:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException)
这似乎奏效了
我跑:
sudo gem install -n /usr/local/bin cocoapods
pod update
这似乎奏效了
我打开了xCode项目并运行了一个构建。错误不再发生,构建成功。解决方案:破解pod文件 简短版本: 1.)在usr/local/bin/pod打开文件 2.)将顶行中的2.3更改为2.6 长版本: 有一个可执行文件位于:usr/local/bin/pod 内容如下:
#!/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/bin/ruby
#
# This file was generated by RubyGems.
#
# The application 'cocoapods' is installed as part of a gem, and
# this file is here to facilitate running it.
#
require 'rubygems'
version = ">= 0.a"
if ARGV.first
str = ARGV.first
str = str.dup.force_encoding("BINARY") if str.respond_to? :force_encoding
if str =~ /\A_(.*)_\z/ and Gem::Version.correct?($1) then
version = $1
ARGV.shift
end
end
load Gem.bin_path('cocoapods', 'pod', version)
我在以下位置打开文件:usr/local/bin/pod
并编辑第一行以将2.3更改为2.6
这产生了一些效果。现在,如果我将cd放入我的xcode项目并尝试运行“pod更新”,我会得到一个不同的错误
Mainframe:graffwriter username$ pod update
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/universal-darwin20/rbconfig.rb:229: warning: Insecure world writable dir /Users/pilotrase/bin/FDK/Tools/osx in PATH, mode 040777
Traceback (most recent call last):
2: from /usr/local/bin/pod:22:in `<main>'
1: from /System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:262:in `bin_path'
/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/2.6.0/rubygems.rb:283:in `find_spec_for_exe': can't find gem cocoapods (>= 0.a) with executable pod (Gem::GemNotFoundException)
这似乎奏效了
我跑:
sudo gem install -n /usr/local/bin cocoapods
pod update
这似乎奏效了
我打开了xCode项目并运行了一个生成。错误不再发生,生成成功
我的机器上存在的实际Ruby版本
事实上,这就是问题的根源。在任何情况下都不应该使用系统ruby!使用rbenv控制您的ruby版本
sudo gem install ...
废话!游戏结束了,谢谢你玩。事实上你不得不说sudo是一个主要的赠品。这将导致以后的巨大麻烦。再次,这是因为你使用的是邪恶的ruby系统。这总是错误的。它不是供公众使用的!使用rbenv,不要再说sudo
我的机器上存在的实际Ruby版本
事实上,这就是问题的根源。在任何情况下都不应该使用系统ruby!使用rbenv控制您的ruby版本
sudo gem install ...
废话!游戏结束了,谢谢你玩。事实上你不得不说sudo是一个主要的赠品。这将在以后导致巨大的麻烦。同样,这是因为你使用的是邪恶的系统ruby。这总是错误的。它不是供公众使用的!使用rbenv,不要再说
sudo
。看,嘿,马特,好名字。我是马特。谢谢作为提示。看起来是一个很好的教程。我正在通过我的选项找到一个我可以控制的版本。问题的具体原因是配置(pod)指向一个不存在的旧版本系统Ruby的文件。由于Ruby 2.3不存在,所以没有一个标准的程序去集成或重新安装POD。更新Homebrew对我来说也不顺利,所以我现在备份到问题的根源。下面的解决方案是有效的&从我阅读的内容来看,我认为很多人们可能也有同样的问题。嘿,马特,名字不错。我是马特。谢谢你的提示。看起来像是一个很棒的教程。我正在通过我的选项找到一个我可以控制的版本。问题的具体原因是配置(pod)指向一个不存在的旧版本系统Ruby的文件。由于Ruby 2.3不存在,所以没有一个标准的程序去集成或重新安装POD。更新Homebrew对我来说也不顺利,所以我现在备份到问题的根源。下面的解决方案是有效的&从我阅读的内容来看,我认为很多人们可能有同样的问题。