While CP2K adheres to the Fortran 2008 standard, not all compilers (or compiler versions) are able to build CP2K correctly. GCC is the most tested compiler. We test some Intel Compiler versions. All other compilers are only used for testing and they are not fully supported, i.e. they can be used with some restrictions. For more details see the CP2K [[https://dashboard.cp2k.org/|dashboard]]. For all other compilers and compiler versions not listed in the table, we suggest testing them by yourself by using the [[https://www.cp2k.org/dev:regtesting|regression tests]]. The table below reports the status of compiling and testing CP2K for __a specific commit__, as reported by the dashboard (**current tested versions are in bold**). ^ Compiler ^ Versions ^ Systems ^ Support ^ Known Issues ^ Last commit tested ^ | GCC | < 4.8 | any | @red: Doesn't compile | Fails with ''Pointer bounds remapping not yet implemented.'', F2003/F2008 too incomplete | [[https://github.com/cp2k/cp2k/tree/8d0aca42e9fca350ce1cdab754fc7a534130c83b|8d0aca4]] | | GCC | 4.8.5 | x86_64 | @red: UNSUPPORTED | 3rd-party projects in the toolchain need C++11/14 support | [[https://github.com/cp2k/cp2k/tree/5e37bfec974926a4feff6c9d0cae88c280604e8f|5e37bfe]] | | GCC | 4.9.2 | x86_64 | @red: UNSUPPORTED | Starting from CP2K v8.1 proper OpenMP support is required, GCC<5 had issues with OMP ATOMIC | [[https://github.com/cp2k/cp2k/commit/ec01bc2fbd6ca57f2730fe5a4690e2cc169df67b| ec01bc2]] | | GCC | 5.5| x86_64 | @red: Doesn't compile | Does not support source argument for ALLOCATE [[https://github.com/cp2k/cp2k/issues/1863|#1863]] | [[https://github.com/cp2k/cp2k/commit/48211d024395a3a153797b6f402ce88430fe52b7|48211d0 ]] | | GCC | 6.5| x86_64 | @red: UNSUPPORTED | RPA/MP2 crash [[https://github.com/cp2k/cp2k/issues/1203|#1203]] | [[https://github.com/cp2k/cp2k/commit/87ec1599983361d405eede4900a5bf13560f7859|87ec159]] | | GCC | 7.5 | x86_64 | @red: UNSUPPORTED | OpenMP regions and OO parameters [[https://github.com/cp2k/cp2k/pull/2858|#2858]] | [[https://github.com/cp2k/cp2k/commit/fbf0cbc|fbf0cbc]] | | **GCC** | **8.3, 8.4, 9.3, 10.*, 11.*, 12.*, 13.* ** | **x86_64** | @green: **OK** | **None** | **Latest** | | GCC | 12.1 | x86_64 | @yellow: Partial | [[https://github.com/cp2k/cp2k/issues/2117|#2117]] | Latest | | GCC (GNU/Linux) | 8.3 | armv7l | @red: UNSUPPORTED (> 8.2) | CMake version too old [[https://github.com/cp2k/cp2k/pull/1891|#1891]] | [[https://github.com/cp2k/cp2k/commit/986a993359bb468e4c0936c3dbcdf9b83a46449b|986a993 ]] | | **GCC (GNU/Linux)** | **11.2, 11.3, 12.1** | **arm64 (aarch64)**| @yellow: **Partial (≥ v9.1)** | **G0W0 [[https://github.com/cp2k/cp2k/issues/1855|#1855]]** | **Latest** | | **GCC (Darwin, Homebrew)**| **12.2.0, 13.2.0** | **arm64 (aarch64)**| @green: **OK (trunk)**| **Not supported: ELPA, LIBXSMM** | **Latest** | | Intel | ≤ 16.0.4 | x86_64 | @red: Doesn't compile | Failing compilation in dbcsr | [[https://github.com/cp2k/cp2k/tree/d1f6d4098af81d59cac26710b57c75c30fb283c6|d1f6d40]] | | Intel | 17.0.1 | x86_64 | @yellow: Partial | MPI parallelization broken (due to MKL) | [[https://github.com/cp2k/cp2k/tree/400f96bdbbfbe5200baecdcd56b5964089bd8e4a|400f96b]] | | Intel | 18.0.0, 18.0.1 | x86_64 | @red: BROKEN | Fails at runtime | [[https://github.com/cp2k/cp2k/tree/4a6d2ced8a408732a7b2f15c6ae47eae766304eb|4a6d2ce]] | | Intel | 19.0.0 | x86_64 | @red: Doesn't compile | Compilation aborted for lri_forces.F90 | [[https://github.com/cp2k/cp2k/tree/1037acfd65c2f978580d1d7d97e2de0e1c8208bf|1037acf]] | | Intel | 17.0.4, 18.0.3, 19.0.3 | x86_64 | @green: OK | None | [[https://github.com/cp2k/cp2k/commit/ae9949d76d96721bff101ddc4761d6df19119685|ae9949d]] | | Intel | 18.0.5 | x86_64 | @green: OK | None | [[https://github.com/cp2k/cp2k/commit/975d77fcc64a4d949b60f8a1aa2c0a2e9e63a5e4|975d77f]] | | Intel | 19.0.4 | x86_64 | @green: OK | None | [[https://github.com/cp2k/cp2k/commit/39a048bdf36b9b3567f59fb051ea276b2d3e727f|39a048b]] | | **Intel (classic)** | **19.1.1, 19.1.3, 2021.* ** | **x86_64** | @green: **OK** | **None** | **Latest** | | Intel\\ (oneAPI) | 2021.3 | x86_64 | @red: UNSUPPORTED | Incomplete Fortran standards support | Latest | | PGI | ≤ 20.4 | x86_64 | @red: BROKEN | Fails compilation in dbcsr (ticket open @ PGI) | [[https://github.com/cp2k/cp2k/tree/e2a1c08b063bc8585330192aacd0ff30a82a4a17|e2a1c08]] | | (ARM) [[https://github.com/flang-compiler/flang|flang]] | | x86_64 | @red: BROKEN | [[https://github.com/flang-compiler/flang/issues/424|#424]], more issues: #891, #892, #893, #894, #896 | [[https://github.com/cp2k/cp2k/tree/d1f6d4098af81d59cac26710b57c75c30fb283c6|d1f6d40]] | | Cray compiler CCE | 8.6.1, 8.6.2, 8.6.5 | x86_64 | @red: BROKEN | Numerical instabilities, threading broken | [[https://github.com/cp2k/cp2k/tree/d1f6d4098af81d59cac26710b57c75c30fb283c6|d1f6d40]] | | Cray compiler CCE | 8.7.4, 8.7.5 | x86_64 | @red: Doesn't compile | Failing compilation | [[https://github.com/cp2k/cp2k/tree/1d20fadd2d08e01f0d436d3baad4e092583b2243|1d20fad]] | | Cray compiler CCE | 8.7.0, 8.7.1, 8.7.2, 8.7.3, 8.7.6, 8.7.7, 8.7.8, 8.7.9 | x86_64 | @green: OK | None (only POPT tested) | [[https://github.com/cp2k/cp2k/tree/7ea2c6ea6bce72059106f1debe11065c5e203a18|7ea2c6e]] | | Cray compiler CCE | 8.7.10 | x86_64 | @green: OK | None (only POPT tested) | [[https://github.com/cp2k/cp2k/tree/d0d6bfb54711c7ac3e6254c1e6db53e084d68db7|d0d6bfb]] | | Cray compiler CCE | 9.0.2 | x86_64 | @green: OK | None (only POPT tested) | [[https://github.com/cp2k/cp2k/commit/03179a6f41ab26697aa95277d01674eb2d127d43|03179a6]] | | Cray compiler CCE | 9.1.3 | x86_64 | @green: OK | None (only POPT tested) | [[https://github.com/cp2k/cp2k/commit/39a048bdf36b9b3567f59fb051ea276b2d3e727f|39a048b]] | | Cray compiler CCE | 10.0.3 | x86_64 | @green: OK | None (only POPT tested) | [[https://github.com/cp2k/cp2k/commit/aa0815f2f1fcaa2e7d60e257f0a9fb0cccc7b48d|aa0815f]] | | Cray compiler CCE | 11.0.2, 11.0.4 | x86_64 | @red: BROKEN | Compiler bug in memory handling of strings |[[https://github.com/cp2k/cp2k/commit/975d77fcc64a4d949b60f8a1aa2c0a2e9e63a5e4|975d77f]] | | **Cray compiler CCE** | **12.0.3** | **x86_64** | @yellow: **Partial** | **Numerical instabilities in RPA/MP2** | **Latest** | | | IBM XL Fortran | 14.01 | IBM/BlueGene Q | @green: OK | None (only POPT tested)| [[https://github.com/cp2k/cp2k/tree/4a6d2ced8a408732a7b2f15c6ae47eae766304eb|4a6d2ce]] | | Fujitsu Fortran | 4.3.1 | Isambard 2 | @red: BROKEN | Fails compilation in DBCSR | |