CocoaPods のインストールから導入まで

環境

  • MacBook Air M3 2024
  • zsh

CocoaPods とは

CocoaPodsは、Objective-Cランタイムで動作する、Objective-C、Swift、およびその他の言語向けのアプリケーションレベルの依存管理システムである。

だそう。
要約すると iOS アプリ開発向けのライブラリ管理ツール。

CocoaPods のインストール

さっそくエラーが出てインストールできない。

$ sudo gem install cocoapods

ERROR:  Error installing cocoapods:
	The last version of drb (>= 0) to support your Ruby & RubyGems was 2.0.6. Try installing it with `gem install drb -v 2.0.6` and then running the current command again
	drb requires Ruby version >= 2.7.0. The current ruby version is 2.6.10.210.

drb というのが今の環境だと最新版?をインストールできないぽい。
v2.0.6 をインストールするか、
Ruby のバージョンを v2.6.10.210 から 2.7.0 以上に上げて欲しいとのこと。

各種バージョン確認

Ruby のバージョンを上げる方法の一つというか、
大体どの記事でも Homebrew rbenv を使ってバージョン上げてるぽいので、
それに従う。

$ ruby -v
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23]

$ brew -v
zsh: command not found: brew

$ rbenv -v
zsh: command not found: rbenv

Ruby 以外何も入ってなかった。

Homebrew のインストール

macOS(またはLinux)用パッケージマネージャー

だそう。

インストール

# パスワード聞かれるので PC にログインする時に使うパスワードを入力する。
$ /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 下記聞かれるので、エンターキーを押す。
Press RETURN/ENTER to continue or any other key to abort:

$ brew -v
zsh: command not found: brew

うーん。

.zshrc

アップル製の CPU (M1とかM2など)を使っている場合、
下記コードを .zshrc (bash の人は .bashrc) に追加するらしい。

$ vi ~/.zshrc

# コマンドで echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc と叩いても同じ
# 下記コードどちらか追加
eval "$(/opt/homebrew/bin/brew shellenv)"
# こちらでも可。自分はこちらを追加した
export PATH="$PATH:/opt/homebrew/bin"

反映&確認

作業しているウインドウを閉じて、
もう一度開いても反映はされる。

# 反映
$ source ~/.zshrc

# 確認
$ brew -v
Homebrew 4.3.18

rbenv のインストール

Manage your app's Ruby environment

だそう。

$ brew install rbenv

# バージョン確認
$ rbenv -v
rbenv 1.3.0

Ruby のバージョンを上げる

# 使用可能なバージョンの一覧を出す
$ rbenv install -l
3.1.6
3.2.5
3.3.4
jruby-9.4.8.0
mruby-3.3.0
picoruby-3.0.0
truffleruby-24.0.2
truffleruby+graalvm-24.0.2

# 適当なバージョンをインストール
# 数分かかる
$ rbenv install 3.3.4

# インストールできているか確認
$ rbenv versions
* system
  3.3.4

# 切り替え&確認
$ rbenv global 3.3.4
$ rbenv versions
  system
* 3.3.4 (set by /Users/xxxxx/.rbenv/version)

確認

$ ruby -v
ruby 2.6.10p210 (2022-04-12 revision 67958) [universal.arm64e-darwin23]

変わっていない。

.zshrc

下記コードを .zshrc (bash の人は .bashrc) に追加。

$ vi ~/.zshrc

# 下記コード追加
eval "$(rbenv init - zsh)"

反映して再度確認

# 反映
$ source ~/.zshrc

# 確認
$ ruby -v
ruby 3.3.4 (2024-07-09 revision be1089c8ec) [arm64-darwin23]

再度 CocoaPods のインストール

# インストール
$ sudo gem install cocoapods

# 確認
$ pod --version
1.15.2

# 最後に下記コマンド叩いてインストール作業終了
$ pod setup

Xcode で使う

init

Podfile が既にあるプロジェクトは飛ばす。

$ cd /path/to/your/project
$ pod init

# 確認
$ cat Podfile

インストール

ライブラリ記述してないけどインストールしてみる。

$ pod install
Unable to determine the platform for the `swift-sample` target

エラーが起きた。

Podfile

Podfile を編集する。
抜粋。コメントアウト外すだけ。

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
↓
platform :ios, '9.0'

再度インストール

$ pod install

プロジェクト名.xcworkspace ファイルやら色々生成される。
以降、開発する際は、プロジェクト名.xcodeproj ではなく、
プロジェクト名.xcworkspace を使う。

プロジェクト名.xcworkspace を開いても、
作業していたファイル等が参照できない場合は、
ちょっと時間たってから再度開く。