はじめに

Carthage(カーセッジ)を使ったプロジェクトでswiftを2.2から3.0にコンバートした時に出たエラーを改善したメモを残します。

以下の2つのライブラリを取り込んでいたところエラーが表示しました

import Alamofire
import SwiftyJSON

原因

エラー内容

Module compiled with Swift 3.0 cannot be imported in Swift 3.0.2

swiftの3.0でコンパイルしたものを3.0.2でインポートすることはできないと言っているようです。
すでにコンパイルしているライブラリを持ってきていることが原因です。

解決

ソースコードを持ってきてローカル側でビルドすることで改善します。
carthageのupdateコマンドに–no-use-binariesオプションを追加することでバイナリを持ってこなくなります。

$ carthage update –no-use-binaries

最後にプロジェクトのクリーンを行いプロジェクトのビルドをすることで実行できました。

その他おすすめの備忘録

Tagged with:
 

Comments are closed.