はじめに
Carthage(カーセージ)を使用してGitHubにあるライブラリを導入する方法です。
環境
Xcode 9.1
macOS 10.13.1(High Sierra)
ターミナルでごにょごにょ
主にターミナルでの操作になります。
1.Homebrewの導入
※導入済みの場合は不要
ターミナルを起動し、下記のコマンドを実行
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2.Carthageの導入
ターミナルで、下記のコマンドを実行
brew install carthage
ちなみにCarthageのバージョンを上げたい場合は下記コマンドを実行
brew upgrade carthage
3.ライブラリを導入したいプロジェクトのディレクトリへ移動
ターミナルのcdコマンドでプロジェクトのディレクトリへ移動します。
例:デスクトップの「ios-test」というプロジェクトに移動する場合
cd desktop/ios-test
4.Cartfileを作成
ターミナルのtouchコマンドでファイルを作成touch Cartfile
これでプロジェクト内にCartfileが作成されます。
5.導入したいライブラリの場所を特定
まずブラウザ等でGitHubで公開されているライブラリのページへアクセスします。
URLを見てみるとhttps://github.com/”ユーザー名”/”ライブラリ名”となっていると思います。
このユーザー名からライブラリ名までをコピーしておきます。
SwiftyJSONの場合は「SwiftyJSON/SwiftyJSON」です。6.Carthfileを編集
先程作成したCartfileを開くとテキストエディットが起動するので、「github "先程コピーした文字列"」と記述して閉じます。7.外部ライブラリをビルド
ターミナルにて下記のコマンドを実行。
少し時間がかかります。
carthage update --platform iOS
ちなみに
carthage update
だけだと、OSX用とwatchOS用のもビルドされます。
ビルドが始まらない場合は、Carthfileに記載した文字列のスペルミス等の可能性が高いです。
Xcodeでごにょごにょ
次はXcodeで外部ライブラリを使用する為の設定をしていきます。
1.Linked Frameworks and Libraryに追加
プロジェクトファイルのGeneralタブから、「Linked Frameworks and Library」を探して+ボタンを押します。
左下にある「Add Other...」を選択します。
次にプロジェクトのディレクトリ内からCarthage/Build/iOSと移動し、
導入したいライブラリの.frameworkファイルを選択して「Open」を押します。
2.Run Scriptでの設定
Build Phasesタブに移動し、+ボタンから「New Run Script Phase」を選択します。
次に追加された「Run Script」を開き、「Shell」の下にある黒い部分に下記のコマンドを記述します。
/usr/local/bin/carthage copy-frameworks
そして次に「input Files」にて+ボタンを押し、以下のようにframeworkの情報を記述します。
$(SRCROOT)/Carthage/Build/iOS/SwiftyJSON.framework
以上でライブラリの導入完了です。
あとは必要なクラスでimportして使用するだけです。
ちなみに新たにライブラリを追加したい場合は、Carthfileに追記してターミナルでプロジェクトのディレクトリに移動後、
carthage update --platform iOS
でビルド
↓
Linked Frameworks and Libraryに追加
↓
「Run Script」の「input Files」にて+ボタンを押し、上記手順と同様にframeworkの情報を記述すればOKです。
コメント