Intel oneAPI (no cost) provides Intel MPI, LAPACK, and Scalapack on Windows. We do not use MSYS2/GCC libraries with Windows oneAPI as they are ABI incompatible.
Whenever wanting to use oneAPI in Windows, use the “oneAPI Command Prompt for Intel 64” on Windows. Note: the Visual Studio CMake generator doesn’t work for these project (or a lot of others). We will use Ninja backend for CMake.
Install latest no cost Visual Studio Community. No particular options are needed – a minimal install is fine.
Install oneAPI Base Toolkit with these options:
Install oneAPI HPC Toolkit with these options:
From the oneAPI Command prompt Window:
git clone https://github.com/gemini3d/external
It’s necessary to use Ninja backend:
cmake -P external/scripts/install_ninja.cmake
Set environment variable CMAKE_GENERATOR to Ninja.
Add to environment variable PATH the directory containing ninja.exe.
Then you can build and install the external libraries:
cmake -S external -B external/build -DCMAKE_INSTALL_PREFIX=~/lib_intel
cmake --build external/build
that installs Gemini3d external libraries under ~/lib_intel (c:/users/username/lib_intel). This path is arbitrary but should be distinct between compilers.
git clone https://github.com/gemini3d/gemini3d
cmake -S gemini3d -B build/gemini3d -G Ninja -DCMAKE_PREFIX_PATH=~/lib_intel
cmake --build gemini3d/build
ctest --test-dir gemini3d/build
Note: to avoid having to type “-G Ninja”, set environment variable CMAKE_GENERATOR to Ninja