過去に完全にコンパイルされたプロジェクトがありますが、最後のXcode更新(6.3.2)以降、デバイスで直接実行しようとするとコンパイルエラーが発生します。シミュレータでビルドして実行すると問題なく動作します。アーカイブ機能も同様に機能します。しかし、接続するデバイスやデバイスが実行しているiOSのバージョンに関係なく、常に同じコンパイルエラーが発生します。
Stack dump:
0. /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CIFilter.h:221:39: current parser token 'NS_REQUIRES_NIL_TERMINATION'
clang: error: unable to execute command: Segmentation fault: 11
clang: error: clang frontend command failed due to signal (use -v to see invocation)
Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: arm-Apple-darwin14.3.0
Thread model: posix
clang: note: diagnostic msg: PLEASE submit a bug report to http://developer.Apple.com/bugreporter/ and include the crash backtrace, preprocessed source, and associated run script.
clang: note: diagnostic msg:
********************
PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT:
Preprocessed source(s) and associated run script(s) are located at:
clang: note: diagnostic msg: /var/folders/p5/2yjs4f055hb0vvgl12yvj38r0000gq/T/SmallAdsSystem-a86b3e.m
clang: note: diagnostic msg: /var/folders/p5/2yjs4f055hb0vvgl12yvj38r0000gq/T/SmallAdsSystem-a86b3e.cache
clang: note: diagnostic msg: /var/folders/p5/2yjs4f055hb0vvgl12yvj38r0000gq/T/SmallAdsSystem-a86b3e.sh
clang: note: diagnostic msg:
********************
これは私を怒らせています。どんな助けでも大歓迎です
どうやらそれは私のXcodeバージョンのバグでした。古いものに戻す必要があり、すべてが再び機能しました。最新のアップデートでは、すべてが正常に機能していました。
私は私の問題の修正を見つけました:
私は仮想マシンを使用しており、プロジェクトを共有フォルダーで直接開きました。プロジェクトをドキュメントに移動しましたが、現在は機能しています!
Segfaultは、ソース内のinvalid unicode文字が原因であることがわかりました。
unable to execute command: Segmentation fault: 11.
ビットコードをオフにして、ipaを達成することができました。ビットコードが何を意味するのか詳細に見ることができます ここ
ポッドにはxcode/....が提供されており、gitからのインストール用のパスであり、xcode 7.3.1とxcode3のような名前でインストールされているため、このタイプのエラーに直面しますが、xcodeに名前を変更すると、このエラーは解決されます。
要約すると、まず、アプリケーションセクションでxcode名を確認してください。
Xcodeでない場合は、xcodeに名前を変更して、アプリを実行してみてください。
私はまったく同じ問題を抱えていました。私の場合、問題のファイルを見て、それをいじりました。巨大なNSDictionary宣言をコメントアウトすることでエラーを解決できました。
NSDictionary* glyphNameToUnicode = [[NSDictionary alloc] initWithObjectsAndKeys:
@"A", @"A",
@"\u00C6", @"AE",
@"\u01FC", @"AEacute",
@"\u01E2", @"AEmacron",
このことはおそらく300行以上でした。代わりに、宣言をファイルに移動し、ファイルから辞書をロードしました。それが役立つかどうかはわかりませんが、私の場合、それらのファイルはランダムではありませんでした...
しかし、xcodeのバグは避けます...
仮想マシンを使用している場合は、仮想マシン内のファイルをコピーし、共有ファイルからインポートしないでください。
デバッグモードとリリースモードの両方でLink-Time Optimization
をNO
に設定すると、問題が解決しました。
10.12(macOS Sierra)の下でビルドされたアプリが10.9の下で起動に失敗する原因となった問題(この記事の執筆時点では既知のバグはクローズされています)を解決するために(以前に問題なく実行した場合でも)、 dは、VMWareインスタンスの下に10.11およびXcode 7.3.1をインストールしました。 Xcode(私の部分の怠惰のため)はデスクトップにコピーされました。
名前が変更されたXcodeに関するSmarterSusheelの回答を読んだ後、パスに関連している可能性があることがわかったので、Xcodeを/Applications
に移動して再試行しました。問題は(ほとんど)解決されました。 「ほとんど」と言ったのは、共有フォルダーでのビルドにも問題があるように思われるため、VMWareインスタンスにプロジェクトフォルダーもコピーする必要があったためです。
9.3を実行しているiPhone 4sシミュレータ用にビルドするとき、i386アーキテクチャでのみ問題がありました
ビットコードを無効にしても機能しない場合(上記を参照)、ソースコードを確認しようとしました。アスキー関連のもの(他の人からの提案)は見つからなかったので、問題のある行が見つかるまで、メソッドごとにコメントアウトしてみました。私にとってエラーはこれが原因でした:
let keyboardSize = ((info![UIKeyboardFrameBeginUserInfoKey] as AnyObject).cgRectValue.size)
それを次のように変更しました:
let keyboardSize = (info![UIKeyboardFrameBeginUserInfoKey] as! NSValue).cgRectValue.size
私は同様の問題に直面していました:
clang: error: unable to execute command: Segmentation fault: 11
clang: error: linker command failed due to signal (use -v to see invocation)
Xcode 7.2から7.3.1に更新するだけで問題が解決しました!
Xcodeを終了して再起動すると、うまくいきました!
Xcodeを再度開いた後、ビルドフォルダーをクリーンアップしてください!