It depends! If a C++ source file includes the header inside an extern "C" section, the header is compiled as C++. If a C source file includes the header, the header is compiled as C. Hence, the header
Creating an architecture means answering many questions about the ecosystem, in which the Qt embedded system operates. While the questions are very similar for all Qt embedded systems, the answers and their priorities differ. So, you should be able to
Our quest for a successful architecture of a harvester terminal continues. In this episode, we discuss when a system with a single application is good enough and when a system with multiple applications and a window manager is the better
Operator conditions like light, temperature, water, dust and vibration are a rich source for constraints and qualities of a system architecture. They affect the SoC, display and connector selection, the touch gesture recognition, the communication between system components, the cabling,
Setting up QtCreator for cross-compilation with CMake took me 15-20 hours the first two or three times. The next half a dozen times took me 4 hours on average. The last two times took me 5 minutes - using the
Our Qt embedded system is displayed on a monitor mounted in portrait orientation. The system runs the Wayland compositor Weston as a window manager. HMI applications are shown rotated by 90 degrees - in landscape orientation. The system toolbar of
September 2021 saw the launch of Qt 6.2 - the first Qt 6 version with feature parity to Qt 5.15. I wanted to find out whether Qt 6.2 is fit for products. So, I migrated the HMI
Which system-on-chip is best suited for your Qt embedded system? Should you build a custom Linux system with Yocto, use a container OS or a desktop Linux? Should you use Qt Commercial or Qt LGPLv3? How will the system be
We change the code of our Qt application in QtCreator and press the Run button to try the changes on an embedded device. QtCreator cross-compiles the application, deploys it to the device and runs it on the device. QtCreator performs
"Complexity is anything related to the structure of a software system that makes it hard to understand and modify the system."
John Ousterhout, The Philosophy of Software Design, Chapter 2
Complexity is also known as technical debt, which
A fairly common anti-pattern found in Qt applications is to derive a class MyApplication from QApplication and to have it hand out pointers to a dozen or more major components of the application. Similar to Qt's qApp macro,
I evaluated the dependency analyser CppDepend on a real-life embedded application. My goal was to find all dependency cycles between classes in the application. I know that the application contains 50+ dependency cycles. CppDepend only found less than 10% of