Skip to content

spack setup fails with AssertionError #2597

@davydden

Description

@davydden

First time tried using spack setup to develop a package with Spack, and unfortunately it did not work. Looks like something is failing here related to compiler (line 1373), which does not make much sense to me:

$ spack setup dealii@develop
Traceback (most recent call last):
  File "/Users/davydden/spack/bin/spack", line 198, in <module>
    main()
  File "/Users/davydden/spack/bin/spack", line 175, in main
    return_val = command(parser, args)
  File "/Users/davydden/spack/lib/spack/spack/cmd/setup.py", line 178, in setup
    install.install(parser, inst_args)
  File "/Users/davydden/spack/lib/spack/spack/cmd/install.py", line 317, in install
    specs = spack.cmd.parse_specs(args.package, concretize=True)
  File "/Users/davydden/spack/lib/spack/spack/cmd/__init__.py", line 108, in parse_specs
    spec.concretize()  # implies normalize
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1543, in concretize
    self._concretize_helper())
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1362, in _concretize_helper
    changed |= dep.spec._concretize_helper(presets, visited)
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1373, in _concretize_helper
    spack.concretizer.concretize_compiler(self),
  File "/Users/davydden/spack/lib/spack/spack/concretize.py", line 341, in concretize_compiler
    find_spec(spec, lambda x: x.compiler and not x.build_dep()) or
  File "/Users/davydden/spack/lib/spack/spack/concretize.py", line 474, in find_spec
    if condition(relative):
  File "/Users/davydden/spack/lib/spack/spack/concretize.py", line 341, in <lambda>
    find_spec(spec, lambda x: x.compiler and not x.build_dep()) or
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1329, in build_dep
    return not (self.root in
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 951, in root
    assert(all(first_root is d.spec.root for d in depiter))
AssertionError

Then I try

$ spack setup dealii@develop%clang
Traceback (most recent call last):
  File "/Users/davydden/spack/bin/spack", line 198, in <module>
    main()
  File "/Users/davydden/spack/bin/spack", line 175, in main
    return_val = command(parser, args)
  File "/Users/davydden/spack/lib/spack/spack/cmd/setup.py", line 178, in setup
    install.install(parser, inst_args)
  File "/Users/davydden/spack/lib/spack/spack/cmd/install.py", line 317, in install
    specs = spack.cmd.parse_specs(args.package, concretize=True)
  File "/Users/davydden/spack/lib/spack/spack/cmd/__init__.py", line 108, in parse_specs
    spec.concretize()  # implies normalize
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1543, in concretize
    self._concretize_helper())
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1362, in _concretize_helper
    changed |= dep.spec._concretize_helper(presets, visited)
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1372, in _concretize_helper
    (spack.concretizer.concretize_architecture(self),
  File "/Users/davydden/spack/lib/spack/spack/concretize.py", line 255, in concretize_architecture
    if spec.build_dep() and spec.disjoint_build_tree():
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 1329, in build_dep
    return not (self.root in
  File "/Users/davydden/spack/lib/spack/spack/spec.py", line 951, in root
    assert(all(first_root is d.spec.root for d in depiter))
AssertionError

and the error path is similar, BUT it now has something related to architecture (line 1372).


packages.yaml:

packages:
  all:
    compiler: [clang, gcc]
    providers:
      mpi: [openmpi]
      blas: [openblas]
      lapack: [openblas]
  libtool:
    compiler: [clang]
  cmake:
    version: [3.6.1]
    compiler: [clang]
  curl:
    version: [7.50.3]
  openssl:
    version: [1.0.2j]
  boost:
    version: [1.62.0]
    variants: +python
  dealii:
    version: [develop]
    variants: ~oce~doc

and compiler.yaml

compilers:
- compiler:
    environment: {}
    extra_rpaths: []
    flags: {}
    modules: []
    operating_system: sierra
    paths:
      cc: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang
      cxx: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang++
      f77: /Users/davydden/spack/opt/spack/darwin-sierra-x86_64/clang-8.0.0-apple/gcc-6.2.0-yuzfgyrrvsnlutzrys2hwgbr47km7cql/bin/gfortran
      fc: /Users/davydden/spack/opt/spack/darwin-sierra-x86_64/clang-8.0.0-apple/gcc-6.2.0-yuzfgyrrvsnlutzrys2hwgbr47km7cql/bin/gfortran
    spec: [email protected]
    target: x86_64

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingtestsGeneral test capability(ies)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions