Skip navigation

Mainling-Aktivitäten November '19

| community

The emlix team has continued its work in those areas where it has been active for the benefit of all members of the free software ecosystem.

Building libjpeg-turbo for AMD64 systems without a matching assembler available resulted in build errors. A fix was provided by us, as well as a follow-up for another issue that was introduced during integration.

Hunting down performance issues can end up using LTTng, and cross-building this resulted in a build error because of wrong ar being used and a configure warning being identified.

In libtiff the code parsing the version variables from the configure file for a CMake build was made more efficient.

Unneeded code was removed from the CMake files of bzip2, so configuration can now run faster.

Qt received connectstyleimprovements, fixes for build warnings when enabling special debugging code as well as typo fixes for comments and documentation. The tslib plugin in 5.14 will have better detection of devices as already announced back in April, and with an additional build fix it should now also build everywhere. Finally, debugging Gstreamer code in QtMultimedia is now slightly more efficient. Some needless internal state changes were also identified and removed, as well as a wrong removal sequence in code that was luckily unused. Some excessive newlines in debug output were also addressed.

Besides these fixes, some more Qt issues have been discovered and reported upstream, like FileDialog property files never being cleared. Bad output from the QtQuick garbage collector has been reported, but has already been fixed upstream for newer Qt versions. In addition, it was discovered that QMediaPlayer sometimes does not play play any further audio until explictely told to do so after state transitions. Using Qt on the i.MX6 has shown a unique set of problems, like a bad interaction of the audio driver with QMediaPlayer that can freeze the UI during a long ioctl call, QPlatformScreen::setPowerState() not working with Vivante driver, and Doublebuffering synchronization problems when moving images. Another obstacle is that the default Alsa configuration does not allow parallel audio playback, which is not really the fault of Qt, but can be tricky to diagnose and was reported to guide others to the root cause when they hit it.

Our first attempt solving these issues was using PulseAudio, which in turn resulted in several buildissues being identified. Sadly also a corruption of the audio output was found and caused severe headaches.

Talking about the i.MX6, the gstreamer-imx package got the typo and build fixes that often show up when we integrate new packages in our BSPs.

A bad assertion in KDevelop was removed, which was triggered when trying to run a test when the executable does not exist. This was subsequently backported to the 5.4 branch and made it into version 5.4.5