Open matt-graham opened 1 year ago
You need to use the same MKL version as oneAPI compiler version. The real underlying problem is #183.
Given that using matching intel-oneapi-mkl
and intel-oneapi-compiler
versions resolved the issue that does seem at least partially to be the case, but this wasn't particularly obvious given that the Intel documentation suggests that oneAPI libraries should be backwards compatible with older compiler versions, though I guess here the issue is specifically that there is a difference in major version and so no guarantee of backwards compatibility.
More to the point, I would say there is a separate but related issue to #183 here as using the suggested fix there would still I think hit against the problem I described here as the intel-oneapi-mkl
package version is not pinned in the updated spec there, which I assume means Spack will therefore get the latest available release which is compatible with the constraints in the spec which seems to currently be resolving to version 2023.1.0. In general it seems it would be useful to have CI set up to regularly test that NESO can be built using Spack with the latest versions of upstream packages that the spack.yaml
manifest file gets concretized to so that issues like this one, #183 and https://github.com/ExCALIBUR-NEPTUNE/NESO-Particles/issues/37 are automatically picked up, and/or more put more constraints in the spec and document the compiler versions which are currently supported.
On trying to install NESO using Spack with adjusted package specification in
spack.yaml
which pins
hdf5
package to v1.12.2 to address https://github.com/ExCALIBUR-NEPTUNE/NESO-Particles/issues/37 (and pinningintel-oneapi-compilers@2022.1.0
when installing Intel compilers to avoid https://github.com/ExCALIBUR-NEPTUNE/NESO/issues/183) I get a series of undefined reference errors inoneapi::mkl
namespace when buildingneso
package using Intel compilersWith above package spec in which
intel-oneapi-mkl
is unpinned, currently version 2023.1.0 ofintel-oneapi-mkl
seems to be getting picked up. On the hunch that this might be causing the above errors I reran with the updated specwith
intel-oneapi-mkl
version pinned and this seems to resolve above errors, with install completing successfully.