2011-11-06 9 views
5

OS Xのバージョンを検出するための事前定義されたCマクロはありますか?私は__APPLE____MACH__が存在することを知っていますが、それらはバイナリです。ライオンを示す具体的な値は__APPLE_CC__ですか?特にOS X版(Lionまたはnot)検出のCマクロ?

、ライオンはライオンに<stdio.h>getline()の定義を追加し、コードはコンパイルエラーを回避するためにライオンの上かコンパイルされたか否かを検出できるようにするとよいでしょう。

特に、私はBash(Unix C code)をXCodeの外に構築することを指しています。

+0

* Lionで*実行中*または実行中*をコンパイルしていますか? –

答えて

5

Availability.hマクロを使用すると、コンパイル時および実行時のバージョンの依存関係をチェックできます。議論hereを参照してください。 /usr/include/AvailabilityMacros.h

3

チェック - それはのようなマクロが含まれています:「opensslの/ sha1.h」が「非推奨」でslatheredされているので、私はそうgitが警告を取得するコンパイル、ライオンの属性のこのようなものに出くわした

#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_7 
    #define DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER DEPRECATED_ATTRIBUTE 
#else 
    #define DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER 
#endif 

を豊富。

関連する問題