C
Supported Development Environment
Supported Qt and Qt Tools Versions
Qt Safe Renderer 2.1.0 installation provides pre-built binaries for Qt 6.5.7. If you like to use Qt Safe Renderer 2.1.0 with some later Qt version, you need to build Qt Safe Renderer from source. For more information, see Building Qt Safe Renderer.
The safe QML types included in Qt Safe Renderer (see Qt Safe Renderer QML Types) and the related layout data format are supported in Qt Creator 10.0.x and later.
Qt Safe Renderer 2.1.0 supports developing UI with Qt Design Studio 4.2 and later. With Qt Design Studio, you can develop a UI with QML types.
Note: Qt Designer supports developing UI only with Qt Widgets. Thus you cannot develop the safety-critical UI with Qt Designer. Also, Qt Quick Designer included in Qt Creator is not supported.
Supported Adaptations
Qt Safe Renderer 2.1.0 provides several adaptations: reference adaptations, techonology preview adaptations, and host adaptations. All reference adaptations are MISRA-compliant. Use the host adaptations only for development purposes.
Note: It is easy to adapt Qt Safe Renderer also for other environments.
Reference Adaptations
The Qt Safe Renderer 2.1.0 reference adaptations are as follows:
Adaptation group | Provided adaptations | MISRA compliance |
---|---|---|
Graphics backends adaptations |
| |
Event handler adaptations |
|
|
Output verifier adaptations |
|
|
You find the sources for adaptations under <QSR Installation directory>/Src/QtSafeRenderer-runtime-<version>/src/adaptation.
Technology Preview Adaptations
Qt Safe Renderer provides the following technology preview adaptations. By default, the technology preview adaptations are not MISRA-compliant.
Adaptation group | Provided adaptations | MISRA compliance |
---|---|---|
Graphics backends adaptations |
|
|
Output verifier adaptations |
|
|
You find the sources for adaptations under <QSR Installation directory>/Src/QtSafeRenderer-runtime-<version>/src/adaptation.
Host Adaptations
Qt Safe Renderer provides the following host adaptations for development usage. These adaptations are not MISRA-compliant and they support only C++17. The host adaptations are not part of the certified Qt Safe Renderer code.
Adaptation group | Provided adaptations | MISRA compliance |
---|---|---|
Graphics backends adaptations |
|
|
Event handler adaptations |
|
|
Output verifier adaptations |
|
|
You find the sources for adaptations under <QSR Installation directory>/Src/QtSafeRenderer-runtime-<version>/src/adaptation.
Supported Host Platforms
Qt Safe Renderer related development work is done on a host platform. The following host platforms are supported in Qt Safe Renderer 2.1.0. The listed compilers are used in Qt Safe Renderer testing but other compiler versions may also work.
Operating System | Architecture | Compiler | Supported Qt Version |
---|---|---|---|
Ubuntu 22.04 | x86_64 | GCC 11.x | Qt 6.5.x (latest version) |
Windows 11 | x86_64 | MSVC 2022, MinGW 11.2 | Qt 6.5.x (latest version) |
macOS 12.0 | x86_64 | Xcode 13 (13 SDK) | Qt 6.5.x (latest version) |
Reference Target Devices
Qt Safe Renderer can be used with a wide range of target devices and operating systems.
The target device must support hardware layers because Qt Safe Renderer is the overlay on top of the non-safe UI.
The operating system of the embedded platform must fulfill the following requirements:
- Provides a way to set up the graphics overlays.
- Supports multiple processes and memory protection between the processes. For example, QNX has a microkernel architecture that prevents processes from interfering with each other. On hypervisor architectures, the non-safe main UI can run on the virtual operating system while the safety-critical content is rendered in the real-time operating system.
- All the tools that are part of producing the Qt Safe Renderer runtime binary must be certified according to the application target safety integrity level (SIL or ASIL) based on the appropriate functional safety standard.
The Qt Safe Renderer 2.1.0 functionality has been tested with the following reference hardware configurations:
- NXP i.MX 8 for Boot to Qt 6.5 for Embedded Linux
- Qualcomm Snapdragon SA8295P with QNX 7.1
- Qualcomm Snapdragon SA8155P with INTEGRITY 19.0.14
If you are our commercial customer, and you want to suggest a change in the existing functionality or report a Qt bug concerning some supported target device or host platform, we recommend you to contact our support team. For more information, see Qt Support. Qt Professional Services can help you with the bugs and suggestions that concern some non-supported target device or host platform.
Coding Standards
Qt Safe Renderer Runtime components support C++98 coding standard. Qt Safe Renderer tools support C++17 coding standard. For more information, see https://isocpp.org/std/the-standard.
Qt Safe Renderer Runtime coding follows MISRA C++ 2008 Guidelines. Qt Safe Renderer Monitor coding follows MISRA C 2004 Guidelines.
Previous Qt Safe Renderer Versions
If you are using some previous Qt Safe Renderer version, see the supported environment information in the archived Qt Safe Renderer documentation.
Available under certain Qt licenses.
Find out more.