プロジェクトをいくつか変更した後、突然このビルドエラーが発生しました。
「kCGImageAlphaPremultipliedLast」への参照があいまいです
エラーを確認すると、4回参照されていることがわかります。
誰かがこれがどのように起こり得るのか、そしてどのようにしてこれを引き起こしているのかをどのようにして理解できるのか教えてもらえますか? CoreGraphicsから明示的に何もインポートせず、Prefixファイルは「Foundation.h」といくつかの自作マクロのみをインポートします。ただし、純粋なCコードを含むいくつかのヘッダーをインポートしていますが、これらはすべて次のようなものにカプセル化されています。
#ifndef __MYCCODE_H
#define __MYCCODE_H
// imports here
// c code here
#endif
これは、LLVM 5.1を使用するXcode 5で発生します
編集:これはこのプロジェクトの別の問題のようです。このコード行をコメントにすると、別のエラーが発生します。
不正な形式または破損AST file: 'Unable to load module "/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache/1NHZ5MC2OSMJV/CoreImage.pcm":module file out of date'
モジュールを削除して再度追加しても、効果はありませんでした。派生データを削除しても効果がありませんでした。このエラーは、作業中のコミットに戻ったときにも表示されます。
新しいプロジェクトを作成し、このプロジェクトにすべてを対処した後、ビルドは成功しましたが、この「不正または破損したASTファイル」エラーが何度か発生しましたが、次の方法で解決できます。
その後、私は時々この修正を行わなければならないことを除いて、それはうまくいきます
私はまた、古いプロジェクトとの差分を作成しました。多くのフレームワークや他の古いものがテストから動かなくなっているようですので、プロジェクト設定ファイルで古いものを確認してください。
私はxcodeと私はいつか友達になることができると思いました。ないと思います...
これはおそらく次のようにインポートすることです:
#import "xxxx.h"
私はこれを通してそれを修正します:
#import <xxxx/xxxx.h>
ヘッダーファイルを2回インポートすると、この問題が発生します。それらの1つを削除すると、問題は解消します。
ここでいくつかの解決策はいいですが、use_frameworks!あなたがそれがこの問題を起こさせたとしても、私が今必要としているのはまさにそれです。しかし、フレームワークを使用していて、ヘッダーがこのように2回参照されていると、ビルドが好きではないようです
#import "TSMessage.h"
#import "TSMessage+CSExtension.h"
しかし、このようにコンパイルすると問題が解決します
#import "TSMessage+CSExtension.h"
Use_frameworksを削除してください!ポッドファイルから、あいまいな問題を修正します。
使用する
_#import "anyviewcontroller.h"
_
モジュールの代わりに
_@import anymodule;
_
私はLGSideMenuControllerを使用していますが、初めて統合するとうまく機能しますが、しばらくしてこのエラーが発生した理由がわかりません。
だから私はモジュール_@import LGSideMenuController;
_をヘッダーファイルに置き換えましたこのように_#import "UIViewController+LGSideMenuController.h"
_
エラーはなくなります。
ビルドレポートを散らかす同じ警告が表示されました(ただし、三角形の下のみ)。結局、私にとってうまくいったのは、次のすべての使用を保証することでした:
#import <Module/Module.h>
アプリで置き換えられました:
@import Module;
これで、これらの迷惑な警告はすべてなくなりました。