qmake Projects和Mac OS X SDK

时间:2012-11-07 12:25:04

标签: xcode macos qt qmake

从Qt项目中使用Mac OS SDK的最明智的方法是什么?您需要有一个指向基本SDK(MacOSX10.X.sdk)的路径,指向所需标题的路径,并指出您正在使用的框架。

目前我在我的专业档案中这样做(在这里得到帮助; Qt, Qmake and Mac Os X SDKs):

MAC_SDK  = /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk
if( !exists( $$MAC_SDK) ) {
  error("The selected Mac OSX SDK does not exist at $$MAC_SDK!")
}
QMAKE_MAC_SDK = $$MAC_SDK

INCLUDEPATH += $$QMAKE_MAC_SDK/System/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers

DEPENDPATH  += $$QMAKE_MAC_SDK/System/Library/Frameworks/CoreFoundation.framework/Versions/A/Headers

LIBS += -framework CoreFoundation

SDK是在Xcode应用程序包中,到底是什么?我想知道是否有一个环境变量存储SDK的路径。另外,切换SDK版本,我必须转到MAC_SDK路径并将10.7改为其他东西,这是最好的方法吗?

1 个答案:

答案 0 :(得分:1)

Xcode的最新版本(我认为4.4以后)现在将所有内容都保留在Xcode包中,而不是先说/Developer。其他工具和应用程序是单独下载的。

在使用Xcode(特别是xcodebuild)查询SDK之外,不知道任何环境变量?

我使用了与qmake项目中选择和使用SDK相同的方法。通常,您使用最新的SDK进行开发,这些SDK通常不会更改。您可能需要或需要minimum version操作系统(=> SDK),因此会使用-mmacosx-version-min=10.X编译器选项来断言。