CocoaPodsのトラブルシューティング【macOS 13.x】
MacbookをM2に新調し、アプリ開発環境を整えている際にCocoaPodsのインストールで発生したトラブルシューティングを記します。何かの参考になれば幸いです。
CocoaPodsのインストール
macOSにCocoaPodsのインストールするには次のコマンドを実行します。
shell
$ sudo gem install cocoapods
$ pod setup
CocoaPodsでライブラリのインストール
Xcodeのプロジェクトディレクトリへ移動してPodfileを作成し、必要なライブラリ情報やターゲットを記述します。ここではPodfileの記述に関する詳しい説明は省略します。
その後、下記を実行してライブラリをインストールします。
shell
$ pod install
2回目以降は下記コマンドで実行できます。
shell
$ pod update
pod installで謎のエラー
pod installをする際に次のような謎のエラーが出てしまいました。
shell
$ pod install
Analyzing dependencies
Cloning spec repo `cocoapods` from `https://github.com/CocoaPods/Specs.git`
[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `cocoapods`.
You can try adding it manually in `/Users/hoge/.cocoapods/repos` or via `pod repo add`.
調べるとバッファエラーのようなので、次のコマンドを実行しました。
shell
$ git config --global http.postBuffer 524288000
それでも症状は改善しません。そこで $ pod install --repo-update --verbose を実行してみました。
shell
$ pod install --repo-update --verbose
Preparing
Updating local specs repositories
Cloning spec repo `cocoapods` from `https://github.com/CocoaPods/Specs.git`
$ /usr/bin/git clone https://github.com/CocoaPods/Specs.git -- cocoapods
Cloning into 'cocoapods'...
error: RPC failed; curl 56 LibreSSL SSL_read: error:02FFF036:system library:func(4095):Connection reset by peer, errno 54
error: 5061 bytes of body are still expected
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
[!] Unable to add a source with url `https://github.com/CocoaPods/Specs.git` named `cocoapods`.
(/usr/bin/git clone https://github.com/CocoaPods/Specs.git -- cocoapods
Cloning into 'cocoapods'...
error: RPC failed; curl 56 LibreSSL SSL_read: error:02FFF036:system library:func(4095):Connection reset by peer, errno 54
error: 5061 bytes of body are still expected
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
)
You can try adding it manually in `/Users/hoge/.cocoapods/repos` or via `pod repo add`.
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/sources_manager.rb:55:in `rescue in create_source_with_url'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/sources_manager.rb:49:in `create_source_with_url'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/sources_manager.rb:22:in `find_or_create_source_with_url'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/analyzer.rb:178:in `block in sources'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/analyzer.rb:177:in `map'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/analyzer.rb:177:in `sources'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer/analyzer.rb:143:in `update_repositories'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:237:in `block in resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/user_interface.rb:64:in `section'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:236:in `resolve_dependencies'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/installer.rb:161:in `install!'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command/install.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/claide-1.1.0/lib/claide/command.rb:334:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/lib/cocoapods/command.rb:52:in `run'
/Library/Ruby/Gems/2.6.0/gems/cocoapods-1.11.3/bin/pod:55:in `<top (required)>'
/usr/local/bin/pod:23:in `load'
/usr/local/bin/pod:23:in `<main>'
なぜかわかりませんが、楽天回線のテザリングだとエラーになってしまうみたいで、POVOの使い放題を使用したところ無事インストールできました。その後も、楽天回線だと失敗したり成功したりな状況で、回線速度の問題なのかなとも思いました。何にせよ無事、podsでライブラリをインストールできて良かったです。
関連記事
アイデアノート > ネイティブアプリ開発