Carthageの概要と使い方。
概要
Swift製のライブラリ管理ツール。Carthage(カルタゴ)を利用するとCocoaPodsよりもコンパイル時間が短くなるらしい。
使い方
1. homebrewでCarthageをインストール
$ brew install carthage
2. Carthageを使いたいプロジェクトに移動
$ cd CarthageSampleApp
3. Cartfileを作成し、使用するライブラリを記載
$ touch Cartfile
次に、作成したCarfileに使用するライブラリを記載します。
今回は、AlamofireとSVProgressHUDを挿れてみます。
github "Alamofire/Alamofire" == 3.5.0
github "SVProgressHUD/SVProgressHUD" == 2.0.3
"github"はライブラリの取得元を指定しています。以下の2つが指定できる模様。
- github
- git
また、Gemfileのようにバージョン番号も指定可能。
4. Carthageコマンドを実行
$ carthage update --platform iOS
--platformオプションで対象のプラットフォームを指定しています。
コマンドが正常に実行されれば以下のファイルとフォルダが生成されます。
- Cartfile.resolved
- Carthage/Build
- Carthage/Checkouts
5. プロジェクトにライブラリを追加
xcodeprojのGeneralタブの[Linked Frameworks and Libraries]の「+」を押す。

「Add Other‥」をクリックして、先程Carthageコマンド実行時に生成された Carthage/Build/iOS フォルダ内にある xxx.framework ファイルを追加します。
ライブラリの追加が終われば、Build Phasesタブを開いて、左上の「+」ボタンをクリックします。そして表示されるメニューの中から「New Run Script Phrase」を選択します。
「Run Script」が表示されるので、「Shell」の下の背景色が黒い部分に以下のコマンドを記述します。
/usr/local/bin/carthage copy-frameworks
そして、次に「input files」の「+」ボタンをクリックし、追加したいフレームワークのパスを記載します。
$(SRCROOT)/Carthage/Build/iOS/Alamofire.framework
$(SRCROOT)/Carthage/Build/iOS/SVProgressHUD.framework

6. Carthageフォルダを.gitignoreに追加
Gitを使う場合は、.gitignoreに Carthage フォルダを追加します。
# Carthage
Carthage/
7. 後はimportして使うだけ
import Alamofire
import SVProgressHUD