Configuration

The QtIvi module provides the following configuration options

Configure Options and Features

The following table shows the available features of the module. Just like with other modules, the available features are auto-detected and displayed after the configuration step in the "Configure summary".

FeatureDependencyDescription
IVI Generator python3 python3-virtualenvThe IVI Generator provides tooling to generate source code out of IDL files. The IVI Generator comes with a set of templates for specific generation use-cases.
QtSimulator Support QtSimulator moduleThe QtSimulator Support is needed for the communication between the simulation backends and their control panel (controller). It enhances the built-in templates by also generating the needed code for the simulation backends to communicate over QtSimulator. In addition, it also provides a new template to generate a controller application to communicate with the simulation backend.
QtRemoteObjects Support QtRemoteObjects moduleThe QtRemoteObjects Support is needed to generate qtivi backends, using QtRemoteObjects as it's IPC. It also provides templates to generate the server part of this IPC.

Additional command-line options to tailor the build-system to your needs:

Command-line optionDescription
--host-tools-onlyOnly compiles the tools needed on the host in order to cross-compile for another target. E.g. the IVI Generator
--ivigenerator <no|qt|system>
ConstantDescription
noDisables the IVI Generator feature completely.
qtEnables the IVI Generator feature: will build and package the needed files.
systemEnables the IVI Generator feature, but is using the IVI Generator files already available on the system. (e.g. from the native-qtivi package when cross-compiling inside Yocto).

These command-line options can be passed to qmake using the QMAKE_EXTRA_ARGS environment variable

QMAKE_EXTRA_ARGS="--host-tools-only" qmake <qtivi-src>/qtivi.pro

Only build what is needed

By default all QtIvi modules are configured to be built, depending on whether all needed dependencies are available for the respective module or not. Similar to other Qt Features, every module can be requested to be built or skipped explicitly using the "--[no-]feature-<modulename>" arguments when invoking qmake.

E.g. to disable building QtIvi Media:

QMAKE_EXTRA_ARGS="--no-feature-ivimedia" qmake <qtivi-src>/qtivi.pro

Selecting the needed module explicitly has the advantage to show an error at configuration time if not all dependencies are met.

Runtime Configuration

The following environment variables are supported for runtime configurations:

Environment variableDescription
SIMULATOR_HOSTNAMESpecifies where the QtSimulator server is running - e.g. the autogenerated control panel binaries.

Note: This is only available when the QtSimulator Support is enabled.

Also see the documentation about the backend plugins for more runtime configuration options.

Logging

The qt.ivi.servicemanagement Logging Category can be used to get more information on which backends were considered, when searching for the correct backend for a feature and also why it was chosen.

© 2020 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.