onox blog

CarthageでRealmを導入

December 25, 2018

モバイル向けデータベースRealmをライブラリ管理ツールCarthageを使って導入する手順

環境

macOS: 10.14.2(Mojave)
xcode: 10.1
Carthage: 0.31.2
realm: 3.13.0

Carthage導入

HomeBrewで導入する

brew install carthage

Realm導入

Realmに沿って入れる

まず、ライブラリ管理用のファイルを作成(RubyでいうGemfile)

touch Cartfile

インストールするライブラリ(今回はrealm)を追記

github "realm/realm-cocoa"

ライブラリをインストール

carthage update

と思ったらこんなエラーが出た

xcrun: error: unable to find utility "xcodebuild", not a developer tool or in PATH

xcodeのCommand Line Toolsが指定されてないことが原因なので、以下から設定する

xcodeのPreference -> Locations -> Command Line Tools

改めてインストール再開、20分ぐらい待機してやっと終わった。

❯ carthage update
*** Fetching realm-cocoa
*** Checking out realm-cocoa at "v3.13.0"
*** xcodebuild output can be found in /var/folders/2l/yf373k2j0b74ct3l842sw7tw0000gn/T/carthage-xcodebuild.bRRsq0.log
*** Skipped downloading realm-cocoa.framework binary due to the error:
	"Must specify two-factor authentication OTP code."
*** Building scheme "Realm" in Realm.xcworkspace
*** Building scheme "RealmSwift" in Realm.xcworkspace

xcodeの設定にRealmを追加する

projectのGeneralsettings -> Linked Frameworks and Libraries RealmSwift.frameworkRealm.frameworkを追加する

xcode_frameworks

次に、Build Phases -> New Run Script Phaseに以下を追加 (App Storeへの送信バグを回避するための作業らしい)

/usr/local/bin/carthage copy-frameworks

Input Filesのpathsに以下を追加

$(SRCROOT)/Carthage/Build/iOS/Realm.framework
$(SRCROOT)/Carthage/Build/iOS/RealmSwift.framework

xcode_run_script