【发布时间】:2012-11-07 12:25:04
【问题描述】:
从 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 更改为其他版本,这是最好的方法吗?
【问题讨论】:
-
你不应该手动设置SDK的路径,它是在编译时自动设置的。只需使用您需要的框架。就这些
-
看来我只需要:INCLUDEPATH += $$QMAKE_MAC_SDK/System/Library/Frameworks/CoreFoundation.framework/Headers DEPENDPATH += $$QMAKE_MAC_SDK/System/Library/Frameworks/CoreFoundation。框架/标题 LIBS += -framework CoreFoundation
-
那更好,但我仍然不确定你是否真的需要添加框架路径,因为它应该由 qmake 自动添加。