Skip to main content

Supported Compilers

Following compilers are backed up by the GitHub Action workflows (CI pipelines), these workflows also include more then 3378 unit tests 😮💥.

Windows >=10​

  • MSVC 2019 >=16.9
  • MSVC 2022 >=17
  • MSYS2 UCRT64 GCC 11.2 - 14.2
  • MSYS2 UCRT64 Clang >=15
  • Clang-cl >=15 with MSVC 2019/2022

Linux​

  • GCC 11.2 - 14.2
  • Clang >=15 (libstdc++ only)
tip

You can compile TinyORM with the MSVC 2022 even if Qt doesn't provide binaries for the MSVC 2022, you can link against Qt MSVC 2019 binaries without any limitations.

info

Qt finally provides MSVC 2022 binaries from Qt v6.8 (after 2.5 years 🤔), what are good news. There will be no MSVC 2019 binaries from Qt v6.8. Everything will work normally and no explicit actions are needed.

warning

The macOS and Clang with libc++ are not supported.

Supported build systems​

  • CMake >=3.22 (policies <= CMP0128 default to NEW)
  • qmake distributed by the Qt Framework
Make tools​
  • jom - highly recommended with the qmake build system on Windows (replacement for nmake)
  • ninja - recommended for CMake as the make file generator
Parallel building​

You can control parallel building using the following environment variables.

  • CMake - CMAKE_BUILD_PARALLEL_LEVEL eg. to 10
  • jom - JOMFLAGS eg. to j11
  • make - MAKEFLAGS eg. to -j10
  • vcpkg - VCPKG_MAX_CONCURRENCY eg. to 10