首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于OS X版本(Lion或非Lion)检测的C宏?

用于OS X版本(Lion或非Lion)检测的C宏?
EN

Stack Overflow用户
提问于 2011-11-06 11:02:54
回答 2查看 4.9K关注 0票数 7

是否有一个预定义的C宏用来检测OS X的版本?我知道__APPLE____MACH__是存在的,但它们是二进制的。__APPLE_CC__是否有一个特定值来表示Lion?

特别是,Lion在Lion的<stdio.h>中添加了getline()的定义,能够检测代码是否在Lion上编译或解决编译错误将是一件很好的事情。

具体地说,我指的是在Bash中(在XCode之外)构建Unix C代码。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-11-06 11:17:32

Availability.h宏使您可以检查编译和运行时版本依赖项。请参阅讨论here

票数 8
EN

Stack Overflow用户

发布于 2011-11-06 11:17:56

检入/usr/include/AvailabilityMacros.h -它包含以下宏:

代码语言:javascript
复制
#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

我之所以遇到这个东西,是因为'openssl/sha1.h‘中充斥着Lion的’弃用‘属性,所以编译git会收到很多警告。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8024961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档