生成
概要
qbs generate [options] [[config:configuration-name] [property:value] ...]
描述
调用项目生成器,例如为其他构建工具创建项目文件。
更多信息,请参阅生成器。
选项
--generator|-g <generator>
使用指定的构建系统生成器。
<generator>
的可能值包括
clangdb
visualstudio2015
iarew8
如果在不传递生成器的情况下运行qbs generate
命令,将会列出可用的生成器。
--build-directory|-d <directory>
指定一个存储构建目标文件的<directory>
。
默认值是当前目录,除非设置了preferences.defaultBuildDirectory
。
相对路径将被解释为相对于当前目录。
您可以使用以下特殊值作为占位符
@project
扩展到不包括扩展名.qbs
的项目文件名。@path
扩展到包含项目文件的目录名。
[--file|-f <file>]
使用<file>
作为项目文件。如果<file>
是一个目录且它包含一个扩展名为.qbs
的单个文件,则将使用该文件。
如果没有给出此选项,则行为与-f <working-dir>
相同。
--install-root <directory>
安装到指定的<directory>
。如果目录不存在,它将被创建。
默认值是<build
dir>/install-root。
使用特殊值@sysroot
可以将安装到sysroot
。这是qbs.sysroot属性的值。
--less-verbose|-q
通过降低日志级别之一变得更加安静。此选项可以给定多次。过多发生没有影响。
如果命令行上除了此选项外还有--log-level
选项,则其值作为减少的基础。
--log-level <level>
使用指定的日志级别。
<level>
的可能值为
错误
警告
info
(默认值)调试
跟踪
--log-time
记录此命令涉及的操作所需时间。
此选项在日志级别 debug
(调试)及以上都默认开启。
此选项与 --show-progress
选项互斥。
--more-verbose|-v
通过增加日志级别来提高详细程度。此选项可以多次提供。过多的出现不会有影响。
如果命令行中除本选项外还出现了 --log-level
选项,它的值将被作为增加的基础。
--settings-dir <directory>
从指定的 <directory>
读取所有设置(如 配置文件 信息)。如果目录不存在,它将被创建。
默认值由系统决定。例如
- Linux:
$HOME/.config/QtProject/qbs
- Windows:
%APPDATA%\QtProject\qbs
- macOS:
$HOME/Library/Preferences/qbs
--show-progress
显示命令执行的进度。
此选项与 --log-time
选项互斥。
参数
config:configuration-name
指定要使用的构建配置。
Qbs可以一次性构建一个或多个配置,每个配置有不同的参数集。`config` 参数有一个特殊功能:每出现一次,就会启动一个新的配置实例,随后直到下一个 `config` 参数的所有参数都将分配给该实例。`config` 出现之前的参数赋值将适用于所有构建配置。在产品和模块内部,可以通过 qbs.configurationName 获取当前活动的构建配置。
以下代码示例中,同心 clang
被应用于所有配置,而 cpp.optimization
对于 debug
和 release
是不同的。
profile:clang config:debug cpp.optimization:none config:release cpp.optimization:small
`config` 的值决定了构建文件夹的名称并影响 qbs.buildVariant 属性的默认值。Qbs 了解 `debug
` 和 `release
` 等值的 `config`,但通常可以选择任何名称。为特殊目的创建的配置命名时,请遵循在编程语言中通常使用的合法名称规则。
- 第一个字符必须是字母(a-z)、下划线(_)或美元符号($)。
- 后续字符可以是字母、数字、下划线或美元符号。
property:value
项目文件或配置文件中设置的属性值可以在命令行中被覆盖。语法是
<prefix>.<property-name>:<property-value>
有关更多信息,请参阅 从命令行覆盖属性值。
示例
为 Microsoft Visual Studio 生成项目
qbs generate -g visualstudio2015
为 Clang 编译数据库(clangdb) 生成
qbs generate --generator clangdb
©2023 本文档中包含的 Qt 公司有限公司的文档贡献均为其各自的版权所有。提供的文档是根据自由软件基金会发布的、在GNU 自由文档许可证1.3版的条款授权使用的。Qt 及其相关标志是芬兰的 Qt 公司及/或其他国家/地区的商标。所有其他商标均为其各自所有者的财产。