Some time ago, I wrote about how to build C++ projects with ASAN on Windows. Now, if you happen to deal with Qt projects you may want to take this one step further and sanitize Qt itself. Why bother with a sanitized Qt build? Let’s have a closer look on why having a sanitized Qt […]
How to Get the RSS Feed
How to Build C++ Projects with the Address Sanitizer on Windows memory bug detection via compiler extension
Memory bugs are tricky. Leaks have a clear impact on performance, and quickly become hard to spot when heap allocated objects move too much. Memory access bugs, on the other hand, make your program crash right away, if you’re lucky. In less desirable cases, they may end up corrupting random objects on the heap, and […]
Writing a Custom Qt 3D Aspect – part 2 Setting up the backend and communications
Introduction In the previous article we gave an overview of the process for creating a custom aspect and showed how to create (most of) the front end functionality. In this article we shall continue building our custom aspect by implementing the corresponding backend types, registering the types and setting up communication from the frontend to […]
Writing a Custom Qt 3D Aspect – part 1 Extending Qt 3D via Aspects
Introduction Qt 3D has a flexible and extensible architecture that allows us to easily add our own new functionality to it without disrupting the existing features. The functionality of Qt 3D is divided among so-called aspects, each of which encapsulates a particular subject domain such as rendering, input, or animation. This short series of articles […]
Lots of lights: Generating cities Data visualization with Qt 3D, OpenGL and C++
Sometimes data visualization might call for more than a graph – you need to visualize complex data, such as that generated by city lighting, in three dimensions to get the full effect. KDAB decided to put together a showcase for the Qt World Summit that allowed us to demonstrate Qt 3D’s capabilities as a performant […]
Clang Tidy, part 2: Integrate qmake and other build systems using Bear Automated refactoring of your source code using powerful open-source tooling
Clang-Tidy, part 2: Modernize your source code using C++11/C++14. The blog series introduces you to the clang-tidy utility and how to use it to automatically refactor C++ source code and integrate it with your build system.
A tale of 2 curves Or the complexity simplicity requires.
As my first subject for this animation blog series, we will be taking a look at Animation curves. Curves, or better, easing curves, is one of the first concepts we are exposed to when dealing with the subject of animation in the QML space. What are they? Well, in simplistic terms, they are a description […]
Clang-Tidy, part 1: Modernize your source code using C++11/C++14 Automated refactoring of your source code using powerful open-source tooling
This blog series will introduce the clang-tidy utility from the Clang/LLVM project and show how to use it to automatically refactor
Writing Code That Won’t Kill A collection of reading material, white papers, and academic journals about functional safety
Functional Safety is the term used for systems designed to minimize risk to human health. But there’s a dilemma in today’s tech-driven world. We are more reliant than ever on software to control our planes, trains, cars, and boats, to operate our medical equipment, to process our food, to clean our water, and to power […]
Qt on Android: How to create an Android service using Qt Full code samples for building with and communicating to QAndroidService background tasks
Starting with Qt 5.7, we added the ability to create Android services using Qt. In this article we’re going to see how to get started and also how to communicate between the two. Before we get started I want to add a big bold WARNING about the performance! Because the services are run in the […]