Carthageでプロジェクトにライブラリを追加する

CocoaPodsからCarthageに乗り換えた時のメモ。

Carthageの読み方は「カーセッジ」。かな?

Carthageをインストール

まずはHomebrewにてCarthageをインストール。Homebrew本体のインストールは割愛。

brew update
brew install carthage

Cartfileの作成と編集

お次は、Cartfileという名前の、ライブラリの情報を記述するファイルをプロジェクト内に作成します。

ライブラリを追加したいプロジェクトへ移動します。

cd /path/to/my-project/

Cartfileを作成します。

touch Cartfile

vimかテキストエディタなどでCartfileを編集します。例えば、「Alamofire」と「SwiftyJSON」を追加する場合は以下のように記述します。

github "Alamofire/Alamofire"
github "SwiftyJSON/SwiftyJSON"

ライブラリをビルドする

以下のコマンドでライブラリをビルドします。

carthage update --platform iOS

ちなみに carthage update だけでもビルドできますが、macOSやwatchOS用のビルドもされるので、今回はiOS用だけを指定しています。

プロジェクトにライブラリを追加する

さて、お次はプロジェクトにこれらのライブラリを追加して使えるようにします。

「TARGETS > General > Linked Frameworks and Library」の+マークを押します。

「Add Other…」を押します。

該当するライブラリを選択します。以下は「SwiftyJSON」の場合の説明です。

「Carthage/Build/iOS」の中の「.framework:ファイルを選択します。SwiftyJSONの場合は「SwiftyJSON.framework」です。

このように追加されたらOKです。

お次は、「Build Phases」タブに移動し、「+ボタン > New Run Script Phase」を選択します。

以下の画像の「1」の部分に以下を入力します。

/usr/local/bin/carthage copy-frameworks

「2」の部分の+ボタンを押して、frameworkの情報を記述します。

SwiftyJSONの場合は以下のとおりです。

$(SRCROOT)/Carthage/Build/iOS/SwiftyJSON.framework

以上で完了!importしてライブラリを使うことができるようになりました。お疲れさまでした。

参考文献