为 watchOS 构建
本节描述 Qbs 针对watchOS的特定功能。
注意:Qbs 目前尚不支持 Swift 编程语言。
xcode 模块包含基于 Xcode 的开发属性和规则。
构建用户界面
ib 模块包含构建 Interface Builder 文档、storyboards、资产目录和图标集的属性和规则。
创建应用包
bundle 模块包含在 Apple 平台上构建和操作 Core Foundation 包(应用包和框架)的属性和规则。
要将应用程序产品作为包或动态库或静态库产品作为框架构建,请添加对包模块的依赖关系并将 bundle.isBundle 属性设置为 true
Depends { name: "bundle" } bundle.isBundle: true
Qbs 还提供一些强大的功能来帮助创建您的包中包含的 Info.plist 文件。实际上,您根本不需要提供 Info.plist 文件。相反,Qbs 将根据在产品中设置的模块属性的值自动生成一个包含必要密钥的文件。
如果您指定了 Info.plist 文件,Qbs 可能仍会从其他来源注入其他密钥到最终输出。Info.plist 密钥的一个显著来源是作为编译其他资源(如资产目录、XIB/NIB 和 storyboards)的结果生成的 部分 Info.plist 文件。
您还可以使用 bundle.infoPlist
属性将一组键值对应用到最终的 Info.plist 中。这可以用在磁盘上的实际 Info.plist 文件之外,或者与之一起使用。
多架构和构建变体
Qbs 使用 multiplexing 创建多架构 fat 二进制文件和多变体框架,在 Apple 平台上,单个框架可以包含库的发布版本和调试版本的构建。
您可以将 qbs.architectures
属性设置为 CPU 架构列表(例如 x86
、x86_64
、armv7a
、armv7k
和 arm64
),将 qbs.buildVariants
属性设置为构建变体列表(例如 debug
和 release
),Qbs 将透明地执行必要的步骤以生成各种工件并将它们组合成一个单独的包。
由于单个构建配置完全独立于彼此,您可以在项目中继续使用如下所示的条件分支
Properties { condition: qbs.buildVariant === "release" cpp.optimization: "small" }
©2023 The Qt Company Ltd. 本文档中的文档贡献是各自所有者的版权。提供在此的文档是根据 Free Software Foundation 发布的 GNU Free Documentation License 1.3 的条款许可的。Qt 和相关标志是 The Qt Company Ltd 在芬兰和/或其他国家的商标。所有其他商标是各自所有者的财产。