Closed tamir-dingjan closed 4 years ago
Hi, MemSurfer works with python3, and it looks like here you're installing with python2 (either from before or you just installed python2?). Regardless, you can force spack to use python3 by
spack install memsurfer@develop ^python@3.7.2 %gcc@7.5.0
Hi, I'm still having problems with version constraints even using python3:
$tamir> python --version Python 3.7.2 $tamir> spack install memsurfer@develop ^python@3.7.2 %gcc@7.5.0 ==> Error: An unsatisfiable version constraint has been detected for spec:
python@3.7.2%gcc@7.5.0
while trying to concretize the partial spec:
memsurfer@develop
memsurfer requires python version 2.7.16, but spec asked for 3.7.2 $tamir>
It looks like you may have an older version of spack -- perhaps you already use spack. MemSurfer with Python3 support was pulled into spack on Apr 15 (https://github.com/spack/spack/pull/15636). So, if you installed spack prior to that, you may not have the correct configurations. You can look at "git log" in the spack directory and see if your latest commit is before this date. If so, please do "git pull". then you should be able to install. Sorry about this. spack repository has its own standards and practices and its workflow is beyond my control
Thank you - I'm still encountering problems with the latest spack:
$tamir> git log | head commit ca4de491bafbda92af7b15c442b33a2d84db969a Author: Toyohisa Kameyama kameyama@riken.jp Date: Mon Apr 27 12:09:06 2020 +0900
$tamir> spack install memsurfer@develop ^python@3.7.2 %gcc@7.5.0 ==> Error: An unsatisfiable variant constraint has been detected for spec:
hdf5@1.10.6%gcc@7.5.0~cxx~debug~fortran+hl+mpi+pic+shared~szip~threadsafe arch=linux-ubuntu18.04-skylake_avx512
^mpi
^zlib@1.2.11%gcc@7.5.0+optimize+pic+shared arch=linux-ubuntu18.04-skylake_avx512
while trying to concretize the partial spec:
netcdf-c~mpi
^m4@1.4.18%gcc@7.5.0+sigsegv arch=linux-ubuntu18.04-skylake_avx512
^libsigsegv
^zlib@1.2.11%gcc@7.5.0+optimize+pic+shared arch=linux-ubuntu18.04-skylake_avx512
netcdf-c requires hdf5 variant ~mpi, but spec asked for +mpi $tamir>
Just a bump - any thoughts on how to resolve these variant constraints?
Could you give the command you're using to install via spack, and version numbers of relevant compilers?
Can you try this?
spack spec memsurfer@develop ^hdf5~mpi ^python@3.7.2 %gcc@7.5.0
The spack spec
command checks the full dependency tree for a package (also the first step of install). If this works, you can continue the installation with the specific hdf5 from the spec command.
This appears to be a bit frustrating, since perhaps some default versioning in the dependency tree has changed and it creates constraint conflict for memsurfer. I installed it without the ^hdf5~mpi
part, but now it seems it is needed. Anyway, please let me know if this works.
Thank you, this makes a lot more progress. All of the dependencies install OK, except for OpenBLAS. So I think the hdf5~mpi dependency is correct now.
The error I'm encountering seems to be caused by a missing Fortran compiler. Could you check if you are using gfortran in addition to gcc? Is there an additional compiler required beyond those listed on the project readme?
Hello. It looks like your spack setup needs more work. I assume you have a fortran compiler on your machine that comes with gcc@7.5.0
. You can run spack compiler add
. This should find all compilers on your machine. After this, please use spack compiler list
to look at all compilers spack knows about, and then spack compiler info gcc@7.5.0
to make sure you have the correct fortran compiler.
Thanks for your patience. I am realizing that the spack route is not as simple as I imagined because it expects users to set up their spack correctly and then of course some other dependencies issues we talked about earlier. I should update spack instructions.
Hello, thank you for pursuing these issues. I've adjusted my local compiler setup following your instructions:
$ spack compiler info gcc@7.5.0
gcc@7.5.0:
paths:
cc = /usr/bin/gcc-7
cxx = /usr/bin/g++-7
f77 = /usr/bin/gfortran
fc = /usr/bin/gfortran
modules = []
operating system = ubuntu18.04
$
Currently, I'm encountering a different error relating to access to PyPoisson - but since it looks like the spack dependencies are fixed, I'll mark this issue as closed. Thank you for all the hard work.
When attempting to install via Spack, an unsatisfiable version constraint is detected - see below for full error output:
$tamir> spack install memsurfer@develop %gcc@7.5.0 ==> Error: An unsatisfiable version constraint has been detected for spec:
while trying to concretize the partial spec:
py-numpy requires python version 3.5:, but spec asked for 2.7.16 $tamir>