eth-cscs / conflux

Distributed Communication-Optimal LU-factorization Algorithm
BSD 3-Clause "New" or "Revised" License
12 stars 3 forks source link

Cmake Version 3.19.3 required for Intel MPI via oneAPI #8

Open saethrej opened 3 years ago

saethrej commented 3 years ago

Executive Summary

When trying to run cmake on a machine with Intel's new oneAPI installed and cmake version < 3.19.3, the FindMPI will fail with an error message like

Make Error in /mnt/d/dev/Bugs/build/CMakeFiles/CMakeTmp/CMakeLists.txt:
  Imported target "MPI::MPI_C" includes non-existent path
    "/mnt/d/dev/Bugs/'/opt/intel/oneapi/mpi/2021.1.1/include'"

This is due to a bug in these versions of cmake that incorrectly handle single quotes as string delimiters, as can be seen here. As a consequence, one cannot compile the code.

Reproducing the Error

Running cmake -DCONFLUX_BLAS=MKL -DCONFLUX_SCALAPACK=MKL .. from the build/ folder with a machine that has Intel's oneAPI installed, and cmake version < 3.19.3.

Related PRs

None.