【Xcode/Swift】ビルドエラー:Command CompileSwiftSources failed with a nonzero exit code

エラー内容

何をしたのかわからないけど、いきなり発生した。。このエラーはよくあるので、ここに解決方法を記載しておきます。

Command CompileSwiftSources failed with a nonzero exit code

解決方法

解決方法は、以下の4つがあります。一番上から一つずつ試していってください。

  1. Clean Build Folder
  2. DerivedData削除
  3. Xcode再起動
  4. シミュレーターでアプリをアンインストール、再起動
  5. ライブラリ入れ直し

1. Clean Build Folder

上のメニューバーのProduct > Clean Build Folder

ショートカットキーなら、command + shift + K

2. DerivedData削除

ターミナルに、以下のコマンドを打ちDerivedDataを削除する。

rm -rf ~/Library/Developer/Xcode/DerivedData/
DerivedDataとは?

DerivedDataとは、中間生成ファイルのことで、プロジェクトごとに生成するキャッシュデータ、インデックス、ログなどが入っているデータのことです。突然ビルドできなくなったというときにはこのデータを削除すると治るとこが多いです。

3. Xcode再起動

Xcodeを再起動する。

4. シミュレーターでアプリをアンインストール、再起動

シミュレーターのアプリをアンインストールし、シミュレーターを再起動する。

普通にiPhoneのように削除する。

5. ライブラリ入れ直し

ライブラリのバージョンが最新でない場合などでもこのエラーが起きてしまいます。そのため、一旦ライブラリを削除してインストールしな押しましょう。

pod 'ライブラリ'の前に#をつけてコメントアウトし、pod installを行います。そうすると、ライブラリが削除されます。

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'BookMaster' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for BookMaster
  #pod 'SwiftyJSON'
  #pod 'SDWebImageSwiftUI'
  #pod 'RealmSwift'
end

削除されたら、もう一度コメントアウトを戻して、pod installをしましょう。

まとめ

Xcodeのバージョンが古いとかでもこのエラーが起きるので、古い場合はXcodeをアップデートしてください。