オンボーディングにて
会社「では、Carthage でこのアプリを作ってください。よろしくお願いします。」
わい「ん、おかのした。(カルタゴ?)」
その夜
わい「はえー、カルタゴって地名なんやな」
わい「…そこに行けと?」
Carthageとは
↑が Carthage の GitHub やな。
この GitHub の About を見てみると。
A simple, decentralized dependency manager for Cocoa
日本語に直すと「Cocoa用のシンプルで分散化された依存関係管理ツール」と言っているんや。
...
さっぱりわからん...。
Cocoa というのは、MacOS 用のアプリケーションを構築するフレームワークのことやから。
要は、Carthage はたくさん存在するiOSアプリのライブラリを管理するツールってことやな。
Carthageのインストール
Carthage をインストールするやり方は沢山あって、主に以下の 4 つの方法があるんや。
- リポジトリの main ブランチからクローンを作成する
- インストーラー
- Homebrew
- MacPorts
Mac ユーザーは Homebrew をよく使うから(偏見)
今回は、Homebrewを使ったやり方を紹介するで。
Homebrewを利用したインストール
Homebrew を入れたことのない人は、ターミナルで以下を実行すると導入できるで。
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
詳しくは、この記事を参考にするとええで。
Homebrew を導入できたら、同じくターミナルで以下を時刻すると Carthage がインストールされるんや。
brew install carthage
Cartfileの作成
いよいよCarthageをプロジェクトに導入していくで!
まず、Carthage を導入したいプロジェクトのディレクトリをターミナルで開くんや。
cd hogehoge/
hogehoge
は導入したいプロジェクト名やで〜。
そしたら、touchコマンドで Carthage
というファイルを作成するで!
この中に、使用したいライブラリを入れていくんや。
touch Cartfile
↑を実行したら、Cartfile
を編集していくで!
編集できるのなら、どんなエディタを使っても OK やで〜。
Vim が好きな人は以下を入力すると、Vim が開いて編集が可能や。
vim Cartfile
Vim などの CUI 形式のエディタが苦手な人は、Finder からプロジェクトのディレクトリを開いて、GUI 形式のエディタ(VScode など)で編集するのも OK や。
最後に、使いたいライブラリを記述していくで!
具体的には、R.swift なら。
github "mac-cain13/R.swift.Library"
Alamofier なら。
github "Alamofire/Alamofire"
↑と記述するんやで。
これは主に GitHub の README に書いてあで。
それを参照して記述すると不具合なく導入できるで。
↓は実際の Alamofire の README や
以上で、Cartfile の作成は終わりや。
Carthageの実行
Cartfile の作成も終わったので、Carthage を実行していくで!
今までは $ carthage update --platform iOS
と入力していたんや。
しかし、Xcode12 以降からは、以下のコードを実行すると、.xcframework
を作成してくれるんや。
carthage update --use-xcframeworks
実際に、プロジェクト内の Carthage/Build
以下に .xcframework
が生成されているで。
最後に、Xcode 内の General
から Frameworks, Libraries, and Embedded Content
セクションに、.xcframework
を追加するんや。
以上で、Carthageを利用したライブラリの導入は終了や。お疲れ様やで。
少し余談
実は、$ carthage update --platform iOS
を実行していた際は Build Phase 設定をイジイジしなくちゃいけなかったんや。
XCFrameworks 対応後はそれが不必要になったんや!便利な世の中になったで。
まとめ
- Carthage を導入していない場合は、
brew install carthage
を実行 - プロジェクト下で
Cartfile
を作成 -
Cartfile
に使うライブラリを導入する - Carfile を保存後、
carthage update --use-xcframeworks
を実行 - Xcode 内で、
Frameworks, Libraries, and Embedded Content
に.xcframework
を追加する
最後に
今回は初めて Carthage を利用した際に調べていたら、情報が古いものばかりだったので誰かの助けになればと思って書いてみました。はじめて Carthage を使う方、英語に苦手意識がある方に役立てば嬉しいです。
また、諸先輩方は間違った内容がございましたら、ご指摘のほどよろしくお願いいたします。
また、書き方はとある方の記事に影響を受けて、エセ関西弁の独り言形式で書いてみました。読みにくかったらサーセン