安装 gem 时出现权限拒绝错误

3
无论我做什么,flutter doctor 始终返回以下结果:
[!] Xcode - develop for iOS and macOS (Xcode 13.3)
• Xcode at /Volumes/ssd/Applications/Xcode.app/Contents/Developer
✗ CocoaPods not installed.
    CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin usage on the Dart side.
    Without CocoaPods, plugins will not work on iOS or macOS.
    For more info, see https://flutter.dev/platform-plugins
  To install see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

当我运行

$ gem install cocoapods

我得到的错误信息是: ERROR: 在执行 gem ... (Errno::EACCES) 时 被拒绝的权限 @ dir_s_mkdir - /Users/omkar/.local/share/gem/specs
我尝试过使用:
$ sudo chown -R /Users/omkar/.local/share/gem/*

密码:

但我得到了以下内容: 用法:chown [-fhnvx] [-R [-H | -L | -P]] owner[:group] file ... chown [-fhnvx] [-R [-H | -L | -P]] :group file ...

而且权限问题仍然存在。

我该如何授予所需的权限?

更多信息: 我按照此答案安装brew, 以下是输出:

$ which ruby 

/usr/local/opt/ruby/bin/ruby

$ ruby -v 

ruby 3.1.1p18 (2022年2月18日修订版 53f5fc4236) [x86_64-darwin21]

2个回答

0

对于仍然遇到这个问题的任何人,这解决了我的问题:https://mac.install.guide/ruby/13.html

简而言之;

  1. brew install ruby

  2. 如果使用zsh,则执行open -e ~/.zshrc,如果使用bash,则执行open -e ~/.bashrc

  3. 在末尾添加以下行: 对于Apple Intel:

if [ -d "/usr/local/opt/ruby/bin" ]; then
  export PATH=/usr/local/opt/ruby/bin:$PATH
  export PATH=`gem environment gemdir`/bin:$PATH
fi

适用于 Apple Silicon:

if [ -d "/opt/homebrew/opt/ruby/bin" ]; then
  export PATH=/opt/homebrew/opt/ruby/bin:$PATH
  export PATH=`gem environment gemdir`/bin:$PATH
fi

现在重新打开终端,输入pod,它应该按预期工作。


0

你尝试使用过吗?

$ sudo gem install cocoapods

即使如此,当我运行flutter doctor时,仍然会出现以下错误: [!] Xcode - 为iOS和macOS开发(Xcode 13.3) •位于/Volumes/ssd/Applications/Xcode.app/Contents/Developer的Xcode ✗未安装CocoaPods。 CocoaPods用于检索响应您在Dart侧使用插件的插件代码的iOS和macOS平台端。 没有CocoaPods,插件将无法在iOS或macOS上工作。 有关更多信息,请参见https://flutter.dev/platform-plugins 要安装,请参见https://guides.cocoapods.org/using/getting-started.html#installation以获取说明。 - Omkar Bojjawar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接