Skip to content

STMicroelectronics/meta-st-x-linux-qt

X-LINUX-QT Logo

X-LINUX-QT is an STM32 MPU OpenSTLinux Expansion Package that targets Qt based application and graphical user interface (GUI) development for the STM32MP25xx series microprocessors. It contains Linux® Qt™ Frameworks, as well as an ST Application Launcher based on Qt™ Framework and application examples to get started with Qt application development.

The Qt framework contains a comprehensive set of highly intuitive and modularized C++ library classes and is loaded with APIs to simplify your application development. Qt produces highly readable, easily maintainable and reusable code with high runtime performance and small footprint – and it's cross-platform.

This expansion package is a complete ecosystem that allow developers working with OpenSTLinux to create Qt based application very easily.

  • All-in-one Qt solutions for the entire STM32MPU serie supporting Wayland and Weston.
  • Pre-integrated into Linux distribution based on ST environment
  • Include Qt frameworks to build UIs and Applications
  • Include ST Application Launcher based on Qt framework for MPU devices (see supported platforms list)

meta-st-x-linux-qt

OpenEmbedded meta layer to install Qt frameworks and tools for the STM32MPU.

Compatibility

  • The X-LINUX-QT OpenSTLinux Expansion Package v2.0.0 is compatible with the Yocto Project™ build systems (mickledore and later versions).
  • It is validated using the Qt6 OpenEmbedded/Yocto Project layer (meta-qt6) over the OpenSTLinux Distributions v5.1.

Supported STM32MPU devices

This expansion package is supporting below STM32 MPU boards.

  • STM32MP257F-EV1
  • STM32MP157F-DK2

Re-generate X-LINUX-QT OpenSTLinux distribution

Install OpenSTLinux distribution

Install X-LINUX-QT environment

  • Clone the meta-st-x-linux-qt git repository
cd <Distribution Package installation directory>/layers/meta-st
git clone -b v2.0.0 https://github.com/STMicroelectronics/meta-st-x-linux-qt.git layers/meta-st/meta-st-x-linux-qt
  • Clone the meta-qt6 git repository
 git clone -b 6.5.3 https://code.qt.io/yocto/meta-qt6.git layers/meta-qt6

Source Yocto/openembedded build environment

DISTRO=openstlinux-weston MACHINE=stm32mp2 BSP_DEPENDENCY="layers/meta-qt6 layers/meta-st/meta-st-x-linux-qt" source layers/meta-st/scripts/envsetup.sh

Build the X-LINUX-QT image

bitbake st-image-qt package-index

Build the X-LINUX-QT SDK

bitbake st-image-qt -c do_populate_sdk

Available frameworks and tools within the X-LINUX-QT expansion package

List of Qt™ 6.5 Modules available in this expansion package:

Qt Essentials Module Available Description
Qt Core Y Core non-graphical classes used by other modules.
Qt GUI Y Base classes for graphical user interface (GUI) components. Includes OpenGL.
Qt Multimedia Y Classes for audio, video, radio and camera functionality.
Qt Multimedia Widgets Y Widget-based classes for implementing multimedia functionality.
Qt Network Y Classes to make network programming easier and more portable.
Qt QML Y Classes for QML and JavaScript languages.
Qt Quick Y A declarative framework for building highly dynamic applications with custom user interfaces.
Qt Quick Controls Y Provides lightweight QML types for creating performant user interfaces for desktop, embedded, and mobile devices. These types employ a simple styling architecture and are very efficient.
Qt Quick Dialogs Y Types for creating and interacting with system dialogs from a Qt Quick application.
Qt Quick Layouts Y Layouts are items that are used to arrange Qt Quick 2 based items in the user interface.
Qt Quick Test Y A unit test framework for QML applications, where the test cases are written as JavaScript functions.
Qt SQL Y Classes for database integration using SQL.
Qt Test Y Classes for unit testing Qt applications and libraries.
Qt Widgets Y Classes to extend Qt GUI with C++ widgets.
Qt Add-Ons Module Available Description
Qt 3D Y Functionality for near-realtime simulation systems with support for 2D and 3D rendering.
Qt 5 Core Compatibility APIs Y Qt Core APIs that were in Qt 5 but not Qt 6.
Qt Android Extras N Provides platform-specific APIs for Android.
Qt Bluetooth N Provides access to Bluetooth hardware.
Qt Charts Y UI Components for displaying visually pleasing charts, driven by static or dynamic data models.
Qt Concurrent Y Classes for writing multi-threaded programs without using low-level threading primitives.
Qt Data Visualization N UI Components for creating stunning 3D data visualizations.
Qt Help N Classes for integrating documentation into applications, similar to Qt Assistant.
Qt Image Formats Y Plugins for additional image formats: TIFF, MNG, TGA, WBMP.
Qt Lottie Animation N A QML API for rendering graphics and animations in JSON format, exported by the Bodymovin plugin for Adobe® After Effects.
Qt Network Authorization N Provides support for OAuth-based authorization to online services.
Qt Multimedia N A rich set of QML types and C++ classes to handle multimedia content. Also includes APIs to handle camera access.
Qt NFC N Provides access to Near-Field communication (NFC) hardware.
Qt OPC UA N Protocol for data modeling and exchange of data in industrial applications.
Qt OpenGL Y OpenGL support classes. Deprecated in favor of the QOpenGL* classes in the Qt GUI module.
Qt PDF N Classes and functions for rendering PDF documents.
Qt Positioning Y Provides access to position, satellite and area monitoring classes.
Qt Print Support Y Classes to make printing easier and more portable.
Qt Quick Controls 1 Y Reusable Qt Quick based UI controls to create classic desktop-style user interfaces. Deprecated in favor of Qt Quick Controls 2, which are better and easier to use.
Qt Quick Extras All Y Provides a specialized set of controls that can be used to build interfaces in Qt Quick.
Qt Quick Timeline Y Enables keyframe-based animations and parameterization.
Qt Quick Widgets Y Provides a C++ widget class for displaying a Qt Quick user interface.
Qt Quick 3D Y Provides a high-level API for creating 3D content or UIs based on Qt Quick.
Qt Quick WebGL N Provides a platform plugin that allows streaming Qt Quick user interfaces over the network using WebGL™.
Qt Remote Objects Y Provides an easy to use mechanism for sharing a QObject's API (Properties/Signals/Slots) between processes or devices.
Qt Script N Classes for making Qt applications scriptable. Deprecated in favor of the QJS* classes in the Qt QML module.
Qt SCXML Y Provides classes and tools for creating state machines from SCXML files and embedding them in applications.
Qt Script Tools Y Additional components for applications that use Qt Script.
Qt Sensors N Provides access to sensor hardware and motion gesture recognition.
Qt Serial Bus N Provides access to serial industrial bus interface. Currently the module supports the CAN bus and Modbus protocols.
Qt Serial Port Y Provides access to hardware and virtual serial ports.
Qt Speech N Provides support for accessibility features such as text-to-speech.
Qt SVG Y Classes for displaying the contents of SVG files. Supports a subset of the SVG 1.2 Tiny standard.
Qt UI Tools N Classes for loading QWidget based forms created in Qt Designer dynamically, at runtime.
Qt Virtual Keyboard Y A framework for implementing different input methods as well as a QML virtual keyboard. Supports localized keyboard layouts and custom visual themes.
Qt WebChannel N Provides access to QObject or QML objects from HTML clients for seamless integration of Qt applications with HTML/JavaScript clients.
Qt WebEngine N Classes and functions for embedding web content in applications using the Chromium browser project.
Qt WebKit N Port of WebKit on top of Qt to support rendering webpages and execute JavaScript code.
Qt WebSockets N Provides WebSocket communication compliant with RFC 6455.
Qt WebView N Displays web content in a QML application by using APIs native to the platform, without the need to include a full web browser stack.
Qt Wayland Compositor Y Provides a framework to develop a Wayland compositor.
Qt for WebAssembly N A platform target to compile Qt applications for the web browsers using WebAssembly.
Qt Windows Extras N Provides platform-specific APIs for Windows.
Qt X11 Extras N Provides platform-specific APIs for X11.
Qt XML Y C++ implementations of SAX and DOM.
Qt XML Patterns Y Support for XPath, XQuery, XSLT and XML schema validation.
Qt Data Compression Y Provides Data Compression Library (zlib) support usied in Qt Core and developpement tools.

Further information on Qt 6.5 All Modules

Further information on how to install and how to use X-LINUX-QT

Further information on Qt 6.5 Framework and Tools

Further information on Qt Group and STMicroelectronics partnership

About

X-LINUX-QT is an STM32MPU OpenSTLinux Expansion Package that targets Qt based application and graphical user interface (GUI) development for the STM32MP25xx series microprocessors. It contains Linux® Qt™ Frameworks, as well as an ST Application Launcher based on Qt™ Framework and application examples to get started with Qt application development.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors