For the past few weeks, I’ve been working on integrating CMake support for Cute Chess. I outlined some tasks to improve the release process, and moving to CMake is prerequisite of those. Our current build system, QMake, is being slowly deprecated by the Qt Company.
The initial switch to CMake turned out to be easier than I thought — I had a working setup on Debian running after few hours of work. Many hours were wasted on the native Windows build and the default build configuration. I think both of these topics should be covered better in the official CMake documentation.
Support for QMake will remain for the source for some time, maybe until the next Cute Chess hackathon in July 2022 after which it will be removed completely.
To build Cute Chess with CMake’s default options:
mkdir build && cd build cmake .. make
This will build
release mode with debug info (
-O2 -g). Dynamic linking of
not supported. Unit tests are built by default which may change in the future.
make test to run the tests.
If you have multiple cores on your machine, you probably want to use the Ninja
sudo apt install ninja-build):
mkdir build && cd build cmake .. -G Ninja ninja
KDAB’s Using Modern CMake with Qt proved helpful resource at the beginning of the project.