[Development] Qt 6 buildsystem support requirements

Kevin Kofler kevin.kofler at chello.at
Sun Jul 22 12:11:17 CEST 2018


Jason Newton wrote:
> My conclusion for the build system with the brightest future is bazel

Looking at this, this build system depends on Python AND Java! They ship 
binaries with everything bundled, but that is a huge bloat (and it also does 
not help GNU/Linux distributions, which will want to use the system versions 
of the languages).

I think a build system should have minimal dependencies, and ideally be 
written in C++ as Qt itself is. If you require more stuff to build the build 
system than to build Qt, something is clearly wrong.

> -Time tested, running in production environments

Bazel is still fairly new and adoption is low, especially in the Free 
Software world. It is being mostly adopted by "hip" projects rather than the 
well-known Free Software projects. In particular, it is not widely used in 
the Qt community. Compare:
https://github.com/bazelbuild/bazel/wiki/Bazel-Users
vs.:
https://cmake.org/ ("Notable Applications Using CMake" section).

There is also little to no documentation on packaging Bazel-using software 
for GNU/Linux distributions. E.g., the Fedora wiki does not contain a single 
reference to Bazel. (The only 2 results I get with a full-text search are 
about a person with that surname.)

> -Ability to build external libraries from source or pull in binary
> libraries - the former offering alot of power that comes with custom
> flags and controlled dependencies for users developing products, and
> the later for distribution like software - the choice is always there
> and low barrier of entry.  One can fuse approaches where it makes
> sense.

GNU/Linux distributions actually want to link against the system libraries, 
not pull in binaries (nor library sources) into the package.

        Kevin Kofler




More information about the Development mailing list