0

フレームワークが Obj-C/Cocoa プロジェクトにリンクされているかどうかをチェックするプリコンパイラ ディレクティブはありますか?

たとえば、いくつかの MapKit カテゴリを含む便利なカテゴリのクラスがあります。ただし、MapKit がフレームワークにリンクされていない場合、これらのカテゴリはコンパイルされません。

次のようなものはありますか:

#ifdef MAPKIT
....
// Only compiles if MapKit framework is linked to the current project
....
#endif
4

2 に答える 2

2

MapKit にはヘッダー ファイルも必要です。MKFoundation.h は を定義しますMK_EXTERN。それを確認できます。

#ifdef MK_EXTERN

#endif

于 2012-10-18T21:18:40.960 に答える
1

いいえ。前処理とコンパイルは 1 つのビルド フェーズで行われます。リンクは別のフェーズです。

Xcode では、ソース ファイルでのリンクに関連するビルド設定に簡単にアクセス/列挙する方法が提供されていません。

于 2012-10-18T20:16:17.193 に答える