Closed dreamer2368 closed 1 year ago
@dreamer2368 Thank you for looking into this. Wonderful job. By the way, it seems that libROM still extract scalapack tar files in dependencies and install it even though it has been done in the past. Can you modify it so that if the scalapack is already installed, then it skips the extraction and re-installing? Perhaps, for pylibrom, we may want to make an option of forcing scalapack extraction and installation to avoid INTEL-MKL errors. What do you think?
@dreamer2368 Thank you for looking into this. Wonderful job. By the way, it seems that libROM still extract scalapack tar files in dependencies and install it even though it has been done in the past. Can you modify it so that if the scalapack is already installed, then it skips the extraction and re-installing? Perhaps, for pylibrom, we may want to make an option of forcing scalapack extraction and installation to avoid INTEL-MKL errors. What do you think?
The scripts/setup.sh
now further checks if the libscalapack.a
exists in the dependencies.
This is in support of pylibROM installation using
pip
on quartz.Current
libROM
compilation usingmkl
module inquartz
has an issue, as the shared object oflibROM
cannot resolve the relative path ofmkl
, as the shared object is packed into the pip installation procedure. (For a detail, see the issue from pybind/cmake_example).scripts/setup.sh
is adjusted so that it can manually install a staticlibscalapack.a
library. There are two options to specify manual installation,-s
flag forscripts/compile.sh
true
as an argument afterscripts/setup.sh
dependencies
.lib/CMakeLists.txt
providesHINTS
tofind_package(ScaLAPACK REQUIRED)
, pointing todependencies/scalapack-2.2.0
.A miscellaneous addition:
cmake/toolchains/simple.cmake
: it simply takes the path tomfem
,hypre
,parmetis
andmetis
from the environment variables (which need to be pre-set).