Qt Creator

Qt Creator 是一种集成开发环境 (IDE),可提供在 Qt 应用框架内设计和开发应用程序所需的工具。您可以利用 Incredibuild 的强大功能来加速 Qt Creator 中的构建。

为此,可以在 Qt creator 中启用 Incredibuild Plugin,该插件已经包含在 Qt Creator 的最新版本中,但是对于旧版本,则必须手动下载。

该插件集成了 Incredibuild Windows 和 Linux,可从不同构建系统执行构建。如需查看支持的版本列表,请参阅 Support Tools

启用 Incredibuild 插件

  1. 前提条件:Incredibuild 已完全安装。

  2. 安装 Incredibuild 插件

    • 如果您使用的是 Qt 4.12.1 或更低版本,则需下载适当的插件文件(见以下链接)并将其载入 Qt 中的下列目录中:
      QtCreator\lib\qtcreator\plugins 目录。

    • 如果您正在使用 Qt Creator 4.12.2:

      可在 Qt 中前往 Qt Creator Menu > Help > Installed Plugins(或 Qt Creator > About Plugins on macOS)启用 Incredibuild。

  3. 如要管理插件如何影响构建,可单击 Details 并编辑设置。对于 windows 和 linux,这些设置有所不同。有关设置详情,请参阅下文的“Incredibuild 插件设置”部分。

在所有非下拉菜单或预定义文本字段的文本字段中,您可以输入 Qt 变量,Incredibuild 会自动将这些变量转换为相应的值。

使用方法

安装 Incredibuild 插件后,单击 Qt Creator 中的 Projects 图标打开 Build Settings 菜单,然后就可以将 "Incredibuild for Windows" 或 "Incredibuild for Linux" 构建步骤添加至 Qt Creator。添加 Incredibuild 构建步骤后,Incredibuild 会通过迭代您已经定义的构建步骤自动检测构建设置中使用的构建步骤。初始构建步骤设置将成为 Incredibuild 构建步骤的一部分,这样您通常使用的构建工具仍将被使用,但还具有 IncredBuild 构建加速的额外好处。

添加 Incredibuild 构建步骤后,您将被问到是否要将其应用到您的所有项目配置中。如果您同意,Incredibuild 步骤将自动添加至所有相关构建配置中。在 Incredibuild 迭代完您的配置并将自己添加到您的初始构建步骤中后,建议仔细检查您的项目配置,确保每个步骤都配置正确,并禁用先前已有但现在不相关的步骤。

示例 - QMake

在此例中,用户定义了一个 qmake 命令,用于创建以下 Make 构建步骤中定义的 Make 构建工具。- 添加 Incredibuild 构建步骤后,Command Helper 字段会自动检测先前构建步骤使用的构建工具,在本例中是 Make。- 如果您看下 "Incredibuild for Windows" 中的 Make 命令行,您会看到它已设置为一个包含 "jom.exe” 的目录,就像上文 Make 构建步骤中定义的那样。

示例 - CMake

同样地,在这个使用 Cmake 的例子中,在添加 Incredibuild 构建步骤后,Build 工具会自动设置为 CMake。
为了在编译时使用 Incredibuild 构建步骤而不是您原来的构建步骤,Incredibuild 插件会自动禁用您原来的构建步骤。通过禁用 Incredibuild 构建步骤并重新启用您原来的构建步骤,您可以轻松地恢复为执行原来的构建步骤,如下图所示。

使用 Incredibuild 在 Qt 中运行构建

配置好 Incredibuild 构建步骤后,只需像平常那样在 Qt Creator 中构建项目,Qt Creator 就会使用 Incredibuild 进行编译。

Incredibuild 控制台的输出会很方便地显示在 Qt Creator Compile Output 控制台中。

如果选中 "Open Monitor" 复选框(默认选中),Incredibuild Build Monitor 会自动开启。

Incredibuild 插件设置

Windows 设置

字段名称

描述

Profile.xml

Profile XML 文件用于定义 Automatic Interception Interface 应如何处理分布式作业中涉及的各种进程。它对于 'Visual Studio' 或 'Make and Build tools' 构建而言不是必需的,但是如果这些构建使用那些技术包中不包含的其它进程,则可用于提供配置选项。需要在 'Dev Tools' 构建中配置分布式进程。

Avoid task execution on local machine when possible

覆盖 Agent Settings 对话框中的 "Avoid task execution on local machine when possible" 选项。这可以释放 initiator 机器上的更多资源,而且咋i启动机器因高 CPU 使用而限制构建的情况下,这可能有利于分布。

Maximum CPUs to utilize in the build

指定构建中利用的最大远程内核数量。覆盖构建设置中的全局最大CPU/内核数。

Newest allowed Helper machine OS

指定安装在 Helper 机器上且允许作为 helper 参与构建的最新操作系统。

Oldest allowed Helper machine OS

指定安装在 Helper 机器上且允许作为 Helper 参与构建的最旧操作系统。

Build Title

指定将显示于构建输出文本开头的自定义标题行。此标题也将用于 Build History 和 Build Monitor 显示。

Save Incredibuild monitor file

将构建进程(.ib_mon)文件的副本写入指定位置。- 如果只给出文件夹名称,Incredibuild 会为文件名生成一个 GUID。- 一条含有已保存 .ib_mon 文件位置的消息会被添加至构建输出的末尾。

Suppress STDOUT

不向标准输出写入任何内容。

Output Log file

将构建输出写入文件。

Show Commands in output

针对已构建的每个文件,显示 Incredibuild 用于构建文件的命令行。

Show Agents in output

显示用于构建各个文件的 Agent。

Show Time in output

显示所构建的各个文件的 Start 和 Finish 时间。

Hide Incredibuild Header in output

在构建输出中抑制 'Incredibuild' 标头。

Internal Incredibuild logging level

覆盖此构建的内部 Incredibuild 日志级别。不影响输出或任何用户可访问的日志记录。主要用于在 Incredibuild 的支持下解决问题。

Set an Environment Variable

设置或覆盖构建上下文的环境变量。

Stop On Errors

进行指定后,只要发生错误就会停止执行。这是 'Visual Studio' 构建的默认行为,但不是 'Make and Build tools' 或 'Dev Tools' 构建的默认行为。

Additional Arguments

手动添加附加 buildconsole 参数。此字段的值将连接到最终的 buildconsole 命令行。

Open Monitor

打开 Incredibuild Build Monitor,在构建开始后以图形方式显示构建进程。

Keep Original Jobs Num

将此选项设置为 true 后,可强制 Incredibuild 不覆盖 -j 命令行开关。默认 Incredibuild 行为是为 -j 命令行开关设置一个高值。该开关控制由 Qt Creator 执行的构建工具将并行执行的进程数(默认 Incredibuild 行为会将此值设置为 200)。

Linux 设置

描述

字段名称

Specify nice value

指定优先值。Nice Value 应为 -20 和 19 之间的数字。

Internal Incredibuild logging level

覆盖此构建的内部 Incredibuild 日志级别。不影响输出或任何用户可访问的日志记录。主要用于在 Incredibuild 的支持下解决问题。

Keep Original Job Number

将此选项设置为 true 后,可强制 Incredibuild 不覆盖 -j 命令行开关。默认 Incredibuild 行为是为 -j 命令行开关设置一个高值。该开关控制由 Qt Creator 执行的构建工具将并行执行的进程数(默认 Incredibuild 行为会将此值设置为 200)。

Alternate 任务偏好设置

强制远程

强制在远程 Helper 上执行 allow_remote 任务。

Incredibuild 插件文件

根据据您的操作系统和 Qt 版本,下载适当的文件。将文件复制到 Qt 中的下列目录中:
QtCreator\lib\qtcreator\plugins 目录。

Windows

Linux