Perl is out of the list of dependencies
Starting with Qt version 6.5, you no longer need Perl to build Qt from sources. The utilities that used Perl have been replaced with a small application written in C++ that speeds up the pre-scanning process of header files.
Header files in Qt library sources are pre-scanned and synchronized using a tool called syncqt, which so far was written in and depended on Perl. The tool checks header files for conformity with Qt standards and generates the symbol-specific CaMeL header files. The new tool has the same functionality with some advantages.
The first and most important change concerns header files that do not belong to the target platform or should not be in the Qt build due to a disabled feature. In new versions of Qt, these header files will not be deployed to Qt installation. For example, previously in Qt for Desktop, you might see header files that are specific to Android:
Starting with Qt 6.5, the above headers will only be installed in Qt for Android builds.
The second change concerns the build process. To reduce the reconfiguration time, the process of scanning header files is divided into two stages:
- The initial scan at the configuration stage occurs once during the first configuration.
- Scanning at the build stage occurs when the header files of Qt modules are changed. This change allows precise control over dependencies between build targets and reduces Qt reconfiguration time.
The use of the new 'syncqt' tool also reduced the configuration time of the top-level Qt build by ~10% during initial configuration and by ~30% during reconfiguration. Please note that the initial configuration time of the standalone qtbase repository may increase slightly as the tool is built at configure time.
Approximate numbers that you can get on Linux when configuring the top-level Qt repository:
We hope these changes improve your Qt experience.
Subscribe to our newsletter
Try Qt 6.6 Now!
Download the latest release here: www.qt.io/download.
Qt 6.6. is a feature release with focus on improving UX capabilities including responsive UI technology and the Qt Graph module.
Check out all our open positions here and follow us on Instagram to see what it's like to be #QtPeople.