Flutter doctor找不到CocoaPods。

7

我遇到了一个问题,提示我使用gem安装cocoapods,但是flutter doctor找不到它。

    [✓] Flutter (Channel stable, 1.22.4, on macOS 11.0 20A2411 darwin-arm, locale en-IN)
    • Flutter version 1.22.4 at /Users/kirandhoundiyal/flutter
    • Framework revision 1aafb3a8b9 (3 weeks ago), 2020-11-13 09:59:28 -0800
    • Engine revision 2c956a31c0
    • Dart version 2.10.4

 
[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Volumes/apps/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Volumes/apps/Android/sdk
    • ANDROID_SDK_ROOT = /Volumes/apps/Android/sdk
    • Java binary at: /Volumes/apps/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)
    • All Android licenses accepted.

[✗] Xcode - develop for iOS and macOS
    ✗ Xcode installation is incomplete; a full installation is necessary for iOS
      development.
      Download at: https://developer.apple.com/xcode/download/
      Or install Xcode via the App Store.
      Once installed, run:
        sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
        sudo xcodebuild -runFirstLaunch
    ✗ CocoaPods installed but not working.
        You appear to have CocoaPods installed but it is not working.
        This can happen if the version of Ruby that CocoaPods was installed with is
        different from the one being used to invoke it.
        This can usually be fixed by re-installing CocoaPods. For more info, see
        https://github.com/flutter/flutter/issues/14293.
      To re-install CocoaPods, run:
        sudo gem install cocoapods

[!] Android Studio (version 4.1)
    • Android Studio at /Volumes/apps/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build
      1.8.0_242-release-1644-b3-6915495)

[!] Connected device
    ! No devices available

! Doctor found issues in 3 categories.

同时,gem list pod 返回一个空列表,但是 sudo gem list pod 返回以下内容。

    *** LOCAL GEMS ***

cocoapods (1.10.0)
cocoapods-core (1.10.0)
cocoapods-deintegrate (1.0.4)
cocoapods-downloader (1.4.0)
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-trunk (1.5.0)
cocoapods-try (1.2.0)

我第一次做这个东西,需要一些帮助,有什么问题吗?

编辑:ruby -v 显示 ruby 2.6.3p62 (2019-04-16 revision 67580) [universal.x86_64-darwin20]

which ruby 显示 - /usr/bin/ruby


我在旧的SO问题中找到了答案,https://dev59.com/AloU5IYBdhLWcg3wAjrV - raju
1
如果您已经从brew安装了rubygems,那么您也可以从brew安装cocoapods。这对我解决了问题。 - Shams Ansari
4个回答

6
我发现我必须首先更新gem本身:
sudo gem update --system
然后卸载并重新安装Cocoapods:
sudo gem uninstall cocoapods
sudo gem install cocoapods
只有这样,flutter doctor才不会抱怨未安装cocoapods。

对我来说,只需运行sudo gem update --system即可,无需重新安装cocoapods。 - undefined
这对我来说没有解决问题。我在OSX v13.6.1上使用的是Ruby v3.2.2。 - undefined

4

首先尝试这个;

sudo gem uninstall cocoapods
sudo gem install cocoapods

如果这个方法对您不起作用,请尝试以下方法:(在我的macOS Big Sur M1上有效)
通过以下命令检查所述目录的权限:
ls -l /home/raphael/flutter/

如果没有成功,在位于上述文件夹的情况下,请尝试通过以下方式更改文件夹的权限:

chown -R YOUR_USERNAME flutter

再次运行第一个命令以验证文件夹中现在显示了适当的用户。然后尝试再次创建项目。

1
在 Mac 上,我使用命令“brew install cocoapods”安装了 cocoapods 并解决了问题。

我也试过了。医生还是不承认。 - undefined

0

尝试逐个解决问题。首先使用以下方法解决Xcode问题:

sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
sudo xcodebuild -runFirstLaunch

运行之后

sudo gem install cocoapods

===

如果这个不起作用,请输出以下命令的结果。你能告诉我brew是否已安装?
$ruby -v
===
$ which ruby
===

Homebrew已安装。我使用的是Mac mini M1芯片。 - raju
然后你必须使用Homebrew安装CocoaPods。卸载旧版本,然后可以使用--sudo gem install cocoapods进行安装。之后运行gem install ffi。 - Dev
我完成了上述步骤,但问题仍然存在。我从homebrew中删除了cocoapods,并使用gem重新安装。在上面问题的编辑中提供了ruby路径。 - raju
我正在使用brew。ruby 3.2.2 (2023-03-30 revision e51014f9c0) [x86_64-darwin22]/usr/local/opt/ruby/bin/ruby。但对我来说没有起作用。 - undefined

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