eic / eic-spack

Spack packages for the Electron Ion Collider
3 stars 6 forks source link

Two identical root packages and 2 python versions... #17

Closed DraTeots closed 4 years ago

DraTeots commented 4 years ago

So when I do

spack load root
==> Error: root matches multiple packages.
  Matching packages:
    xtk4trt root@6.20.04%gcc@9.3.0 arch=linux-rhel7-x86_64
    k5ecye2 root@6.20.04%gcc@9.3.0 arch=linux-rhel7-x86_64
  Use a more specific spec.

Investigating further:

[romanov@ifarm1802 il]$ spack find -v /k5ecye2
==> 1 installed package
-- linux-rhel7-x86_64 / gcc@9.3.0 -------------------------------
root@6.20.04~aqua+davix~emacs+examples~fftw~fits~fortran+gdml+gminimal~graphviz+gsl~http~jemalloc+math~memstat+minuit~mlp~mysql+opengl~postgres+pythia6+pythia8+python~qt4~r~root7+rootfit+rpath~shadow~sqlite~ssl~table+tbb+threads~tmva+unuran~vc+vdt+vmc+x+xml~xrootd build_type=RelWithDebInfo cxxstd=17 patches=22af3471f3fd87c0fe8917bf9c811c6d806de6c8b9867d30a1e3d383a1b929d7
[romanov@ifarm1802 il]$ spack find -v /xtk4trt
==> 1 installed package
-- linux-rhel7-x86_64 / gcc@9.3.0 -------------------------------
root@6.20.04~aqua+davix~emacs+examples~fftw~fits~fortran+gdml+gminimal~graphviz+gsl~http~jemalloc+math~memstat+minuit~mlp~mysql+opengl~postgres+pythia6+pythia8+python~qt4~r~root7+rootfit+rpath~shadow~sqlite~ssl~table+tbb+threads~tmva+unuran~vc+vdt+vmc+x+xml~xrootd build_type=RelWithDebInfo cxxstd=17 patches=22af3471f3fd87c0fe8917bf9c811c6d806de6c8b9867d30a1e3d383a1b929d7

Looks the same

[romanov@ifarm1801 ~]$ spack dependents -i /xtk4trt
==> Dependents of root@6.20.04%gcc@9.3.0/xtk4trt
-- linux-rhel7-x86_64 / gcc@9.3.0 -------------------------------
tuhrlmz acts@0.22.0    6t7xskr eic-smear@1.0.4  cn6diet ejana@1.2.2     gztapbe g4e@1.3.2       4ca5vkg genfit@2020-06-03  suv4zls vgm@4-5
tfcbhsi delphes@3.4.2  2f5u3cv eicroot@master   ztiliaz escalate@1.0.1  asvfpud geant3-vmc@3-4  b2ynko5 jana2@2.0.2        hbghm4v vmc@1-0-p2
[romanov@ifarm1801 ~]$ spack dependents -i /k5ecye2

==> Dependents of root@6.20.04%gcc@9.3.0/k5ecye2
-- linux-rhel7-x86_64 / gcc@9.3.0 -------------------------------
nxhocem acts@0.24.0    l43dtmd delphes@3.4.2    sopiibe eicroot@master  l7qn7ja escalate@develop  esn3qfo geant3-vmc@3-4     xscbk2o jana2@2.0.3  47koqlq vmc@1-0-p2
vvxqj6b dd4hep@1.12.1  7p6yjgt eic-smear@1.0.4  jktk7tb ejana@1.2.2     lbt2ip6 g4e@1.3.2         lhxjucb genfit@2020-06-03  tzz5grl vgm@4-8

Ok here we have different versions depends on root

What about root depndencies

spack find -d root gives a long output comparing which the only difference is python@3.7.5 vs python@3.7.7

I wanted to file the next issue for 2 python and if we need them. But it happens that it fit this problem.

Here are the dependencies for both packages

[romanov@ifarm1801 ~]$ spack dependents -i python@3.7.7
==> Dependents of python@3.7.7%gcc@9.3.0/5ccvh43
-- linux-rhel7-x86_64 / gcc@9.3.0 -------------------------------
vvxqj6b dd4hep@1.12.1       53dipkl py-flake8@3.8.2              fwzfjlr py-mccabe@0.6.1          qefq7rq py-pep8-naming@0.10.0  wnfi4pr py-setuptools@46.1.3  ywmmwdb z3@4.8.7
l7qn7ja escalate@develop    t3mrwzm py-flake8-polyfill@1.0.2     pwcfloo py-more-itertools@7.2.0  jsu3zbb py-pycodestyle@2.6.0   ylclpcy py-zipp@0.6.0
redl2fh py-entrypoints@0.3  dwd3de6 py-importlib-metadata@1.2.0  ou62iik py-numpy@1.18.5          nh6b52g py-pyflakes@2.2.0      k5ecye2 root@6.20.04

[romanov@ifarm1801 ~]$ spack dependents -i python@3.7.5
==> Dependents of python@3.7.5%gcc@9.3.0/wa6j2pm
-- linux-rhel7-x86_64 / gcc@9.3.0 -------------------------------
ztiliaz escalate@1.0.1  gcqf3vl py-numpy@1.18.5  3jgxtow py-setuptools@46.1.3  xtk4trt root@6.20.04  xfvitpe z3@4.8.7
wdconinc commented 4 years ago

That's because escalate@1.0.1 and escalate@develop depend on different root versions and therefore two get installed.

wdconinc commented 4 years ago

This gets resolved by telling users to load escalate, which includes root, instead of directly loading root.