GCC Support

The software currently builds under gcc 10.2, but it is not actively tested or maintained. Additionally, performance on several microbenchmarks is worse in gcc then it is in clang.

If you want to build with the system gcc (10.2 or above) and not use our toolchain environment, you can with these commands:

mkdir build
cd build
cmake \
  -DCMAKE_TOOLCHAIN_FILE=<repo root path>/cmake/compiler-gcc-x86.cmake \
  -DCMAKE_BUILD_TYPE=RelWithDebInfo \
  -GNinja \
  ..
ninja

Known Issues

  • Some modules still assume you have the toolchain expanded for Fortran support
  • Fortran is not detected automatically but assumed to exist as gfortran
  • Linking against OpenMP successfully can be a bit challenging

Possible Gotchas

  • clang doesn’t detect signed comparisons as an error as gcc does; it’s likely this will break in the future