Locates files outside the project. More...


Detailed Description

Probe items can appear inside Product, Project and ModuleProvider items. They are run prior to building, for instance to locate dependent headers, libraries, and other files outside the project directory whose locations are not known ahead of time. Probes can be parameterized via their properties and typically store results in properties as well. These results are then retrieved via the Probe's id, which is mandatory:

Product {
    Probe {
        id: valueCalculator
        property string parameter: "whatever"
        property int value
        configure: {
            value = Utils.calculateValue(parameter); // Expensive operation
            found = true;
    property int theValue: valueCalculator.value

Note: Because Probes often invoke external processes, which is relatively expensive compared to evaluating normal properties, their results are cached. To force re-evaluation of a Probe, you can supply the –force-probe-execution command-line option to the build command.

Property Documentation

condition : bool

Determines whether the probe will actually be run.

Default: true

configure : script

A script that is executed when the probe is run.

found : bool

Indicates whether the probe was run successfully. Set by configure.

Default: Undefined

© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.