web-dev-qa-db-ja.com

Xcode 6.0.1コマンド/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftcが終了コード1で失敗しました

アーカイブでこのエラーが発生しています:

コマンド/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swiftcは、終了コード1で失敗しました

解決方法

スクリーンショットをご覧ください。

error

65
R_Developer

この問題は、Swift最適化レベルNoneに設定されていない場合に発生しますリリース。値をNoneに設定すると、問題はなくなります。

  1. プロジェクトを開き、プロジェクトのルートディレクトリをクリックします。
  2. [ビルド設定]タブをクリックします。
  3. Swift Compiler-Code GenerationおよびOptimization Levelで検索してくださいReleaseNoneに設定されます。

編集

Xcode 6.1にアップグレードした後、これらの指示はアーカイブ時に他の問題を引き起こしました(デバッグ/デバイス用のビルドは正常に機能しました)。最適化を最速に設定すると、再びアーカイブできました。 Swiftのコンパイルにはまだ明らかな問題があります(特にアーカイブ)。

動作している6.0.1 Swift Xcode 6.1のプロジェクトをアーカイブできない/セグメンテーションエラー:11

編集この回答を読むまで、[ビルド設定]タブに資金を提供できませんでした。

ビルド設定タブの見つけ方

98
Mark McCorkle

これは、まったく同じファイルが2つあるときに発生しました。また、ファイルが見つからなかったときに、削除したことがわからなかったために発生しました。エラーメッセージをクリックすると、エラーのすぐ上に、1つ以上のファイルがあるか、欠落しているファイルが表示されます。

34
Henry F

ナビゲーションで[製品]をクリックし、[クリーン]ボタンを選択できます。プロジェクト内のすべてのコンパイルエラーが消去されます。その後、最新のエラーをデバッグできます。

16
庄景鹏

削除されたファイルの参照はビルドフェーズで保持されるため、このエラーが発生します。そこから参照も削除します。

プロジェクト>ターゲット>ビルドフェーズ

このセクションの下には、削除されたファイルが赤色で表示されます。これらのファイルを削除するとエラーが解決します。

8
FARAZ

解決策が1つあるかどうかはわかりません。最後のgitコミットの違いを確認し、変更のコメントをオン/オフすることをお勧めします。

私の場合、私のコードは

let anArray = ResultDict["ResultSet"] as [[NSDictionary : AnyObject]]
for aDict : NSDictionary in anArray {
    let anObject = ObjectType(ObjectDict: aDict)
    objectList.addObject(aDict)
}

行に警告はありません。同じexit 1のコンパイルエラーが発生し、それをコンパイル済みの以下に変更しました。

let anArray = ResultDict["ResultSet"] as [[NSDictionary : AnyObject]]
    for aDict in anArray {
        let anObject = ObjectType(ObjectDict: aDict)
        objectList.addObject(aDict)
    }
4
Mihriban Minaz

私の場合、プロジェクトディレクトリ内の同じ名前の重複ファイルが原因でした。それらを削除するとすぐに、エラーはなくなりました。

3
Dimitri T

これが本当に答えかどうかはわかりませんが...

I同じ問題がありました。ビルド/実行時にアプリは機能しましたが、アーカイブは「... swiftcが終了コード1で失敗しました」で失敗し、他の有用なメッセージはまったくありませんでした。幸いなことに、 Nomad'sipa buildでアプリをビルドしようとすると、

The following build commands failed:
    CompileSwift normal arm64 /path/to/erroneous/TableViewController.Swift

それで、私はそのファイルのセクションをコメントアウトし始め、問題をタプルの割り当てまで追跡しました。

// MARK: - Table Data

private var tableData: [(sectionName: String, item:ListItem)] = []

private func refreshTableData() {

    // let labor = ("Labor", laborListItem)                 // DOESN'T ARCHIVE
    let labor = (sectionName: "Labor", item: laborListItem) // ARCHIVES

    tableData = [labor]

    tableView.reloadData()
}

したがって、コンパイラは、_tableDataのタイプで定義されているように、thast Tupleという名前の要素を望んでいたようです。愚かなことは、私はこの同じパターンを他のView Controllerで使用しており、コンパイラーはそれらで問題ないようです。

レコードについては、デバッグとリリースのためにCode Generation -> Optimization LevelがNoneに設定されました。

これが誰かを助けることを願っています!これを理解するのに何時間もかかりました。

3
RyanM

関数の呼び出しの最後に括弧を入れなかったときに私に起こりました:

let var = self.getNextPrimeNumber

以下によって解決しました:

let var = self.getNextPrimeNumber()
3
danywarner

Core Dataを使用する場合
NSManagedObjectサブクラスを作成したCore Dataエンティティがありました(Xcodeの助けを借りて)。さらに、エンティティはコードを自動的に生成するように構成されていたため(スクリーンショットを参照)、実行時に基本的に2つのクラスが存在しました。オプションを「手動/なし」に切り替えるだけで、生成されません。

enter image description here

1
Shaked Sayag

このエラーにつながる可能性があるもう1つのケースは、追跡に数時間しかかかりませんでした。常にnilを返す失敗可能な初期化子です。

私はこのようなイニシャライザを持っていました:

init?(object: MyObject) {
    if object.importantProperty {
        // initialize
    }
    return nil
}

私が意味したことは:

init?(object: MyObject) {
    if object.importantProperty {
        // initialize
    }
    else {
        return nil
    }
}

イニシャライザを修正すると、エラーはなくなりました。

1
cforkish

このエラーは、いくつかの.Swiftファイルが間違ったディレクトリ(Xcodeプロジェクトディレクトリの1つ上のレベル)に不可解に存在することに気付いた後に発生しました。これに気づいたとき、私はそれらをメインのプロジェクトディレクトリに移動し、プロジェクトをきれいにしました。ただし、プロジェクトをビルドすると、上記の「終了コード1で失敗しました」エラーが発生しました。エラーメッセージのすぐ上に、移動したばかりのファイルがリストされており、以前のディレクトリでは見つからなかったことを示しています。エラーメッセージに加えて、移動したファイルはファイルナビゲーションペインに赤で表示されていました。

問題の各ファイルについて、これを解決するために何をしましたか?-Xcodeファイルナビゲーションペインのファイルのリストからファイルを選択します-Xcodeの右ペインの小さなページアイコンをクリックして、ファイル属性を開きますペイン、-ファイル属性ペインの「場所」と書かれている下の小さなフォルダアイコンをクリックします。-ファイルの新しい場所を選択します。-上記の変更に対してXcodeを再起動すると、実際に何でもできます。

1
ClayJ

同じことが起こっただけです。空のときでもエラーの原因となった1つのファイルに原因を探しました。ファイルを調べると、文字セットが間違っていることがわかりました。 UTF-8に設定すると、エラーはなくなりました。間違った文字セットでデコードしていたと思います。

このことから、コンパイラが準備されていない何かが起こったことをエラーが単に示しているだけだと思います。ほとんどの人にとってはあまり役に立たない申し訳ありませんが、キャラクターセットを確認するのに役立つかもしれません。

1
Owen Godfrey

このエラーはファイルが欠落しているために発生するため、コンパイラはファイルを見つけることができず、アラートを出し続けることができません。アプリを再構築するには、次の手順に従います。

  1. ワークスペース内で赤く見えないファイルを探す
  2. 参照を削除する
  3. ファイルを再追加
  4. 再コンパイル
1
Jane chicken

これは、Swiftファイルから静的インライン関数を使用したときに起こりました

関数は次のようになります

static inline void openURLInSafari(NSString * _Nonnull urlString) {
[[UIApplication sharedApplication]openURL:[NSURL URLWithString:urlString]];}
1
M.Othman

私の場合、プロジェクトターゲットのビルド設定で、その他のSwift Flags、jsutで文字列「-serialize-debugging-options」を削除します ここに画像の説明を入力してください

0
sunshine

私のやり方では、エラーは((UIDevice.currentDevice().systemVersion as NSString).floatValue >= 8.0)UIDevice.currentDevice()が原因でした

これをコメントした後、すべてが正常に動作を開始します。

XCode 7.2

0
vkalit

私の場合、エラーはXcodeによって生成されたファイルの欠落の結果でした。定期的にきれいにしてみました Opt+Shift+K そして、それはすべてのエラーをきれいにしませんでした。 Apple Developerサイトで、Xcodeの製品メニューに移動し、optキーを押しながら[ビルドフォルダーのクリーンアップ]を選択することをお勧めする投稿を見つけました。確認のためのモーダルダイアログがポップアップ表示されるため、これはより包括的なビルドのようです。

0
curt

これが発生する可能性のある理由の1つは、おそらくファイルを削除したが、その参照を削除していないためです。これにより、pbxprojファイルが台無しになります。私はそれが事実かどうかを確認します。

0
Harsh G.

RyanM と非常に似た解像度がありました。ここでは、過剰なhub慢で、変数を内部関数のデフォルト値に割り当てようとしました。

コンパイルに失敗します(SourceKitはクラッシュしません):

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    func itemCell(_ indexPath: IndexPath = indexPath) -> UITableViewCell {//...}

成功:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    func itemCell(_ indexPath: IndexPath) -> UITableViewCell {//...}
0
Stan

「開発ポッド」フォルダーにリストされているすべてのフレームワークパスを確認します。

0
user9014721

私の場合、xcode 9.2の代わりにSwift開発スナップショットが選択されました。手順と画像を次に示します。

  1. xcodeを画面に表示したまま、Xcodeのトップメニューバーをクリックします。
  2. ツールチェーンオプションに移動してxcode 9.2を確認するよりも。それでおしまい。 enter image description here ハッピーコーディング!!!
0
MRizwan33

Git mergeを実行した後にこのエラーが発生しました。新しいXcode警告を解決し、プロジェクトをコンパイルできます。

私の場合、Xcode 7.2.1が使用されています。

0
oOEric

そのため、上記を確認して、ファイルをロックするTFSの問題に絞り込みましたが、小さなコピーや手動入力以外の編集を貼り付けたり、行った場合に限ります。元のファイルはコンパイルされることに気付きましたが、構文は問題ありませんが、私の編集はコンパイルされません。また、関連するドキュメントを保存できません: xcodeドキュメント「...」を保存できませんでした

両方の修正は:

  1. 作業バージョンが重複しています。
  2. 完全にマージされた新しいコードを複製に貼り付けます。
  3. 古いファイルを新しいファイルにコピーして貼り付けます。 (個人的に古いものを別の名前に変更し、複製を貼り付けて名前を変更しました。テスト中に元に戻すために以前に直接貼り付けてから両方の作業を推測します)。

出来上がり。マージロックの問題を回避する怠zyな方法。どうやら完全なファイルペーストは問題なく、編集はそうではありません。他の回答はこれほど怠zyではないようであるため、共有されています。 ;)注:非UTF-8キャラクターがどこかに道を開いたのではないかと疑っていますが、古いバージョンではペーストが機能していたため、どこで、または関連するかはわかりません。

0
Stephen J