LoginSignup
17
17

More than 5 years have passed since last update.

Carthageを使ったプロジェクトをXcode7.3にアップデートする

Last updated at Posted at 2016-03-23

downloads からdmgをダウンロードしてインストールする.

XcodeはApp Storeよりはdmgを落とすのが賢明だそうです。
http://ericasadun.com/2016/03/22/xcode-upgrades-lessons-learned/

古いバージョンで/Applications/Xcode.app がインストールされている時は、/Applications/Xcode7.2.1 とかに適当にリネームしておいておけば、併存させることができます。

Xcodeを複数バージョン使用する必要があるときは、デフォルトのXcodeを切り替えた時にSimulatorを全部リセットするようにしましょう。

なおダウンロードしたdmgをチーム内でUSBとかAirDropを使ってコピーしたりすると、Xcode自体の証明書が不正なのでアプリ署名がうまくいかないことがあるような話を聞いたことがあります。個人的には、自分でDeveloper Centerにログインしてダウンロードするのが確実かと思います。

デフォルトのXcodeを選択する

$ sudo xcode-select -s /Applications/Xcode.app

XVim をアップデートする

XVimがないと手が止まるという人はアップデートしましょう。
#935 のPRで早速Xcode7.3対応が出ていましたのでcheckoutしてビルドします。

$ git fetch origin pull/935/head:935
$ git checkout 935
$ make

シミュレータを全部リセットする(大事)

$ snapshot reset_simulators

tvOSやwatchOSの場合特にシミュレータがないとCarthageのビルドが失敗します。
このコマンドもよくエラーになるので2回くらい実行しておきましょう。

Carthageのライブラリを更新

$ carthage build

もしくは

$ carthage bootstrap --no-use-binaries

必要に応じてライブラリをアップデートする必要があるかもしれません。例えばTVMLKitchen では@exported attributeを使用しているため、そのままではSwift2.2でビルドできませんでしたCartfile を修正してアップデートします。

$ editor Cartfile
$ carthage update --platform tvos TVMLKitchen

以上の手順で、シミュレータターゲットでビルドができることを確認できました。

UIFont(named:size:)がエラー

シミュレータのDebugビルドなら問題なかったのですが、リリースビルドでエラーになりました😫
こちらの記事に回避方法が書いてありました。thanks..
既存アプリの Xcode 7.3 + Swift 2.2 対応

以上の手順で、リリースビルド(archive)とipaのエクスポートまで確認できました。

App Storeのアップデートを非表示にする

結局上の手順だけだとこうなって、

こうなりました。

これで回避できるかも?(動作未確認)

17
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
17