diff --git a/lib/spack/spack/spec.py b/lib/spack/spack/spec.py index 9fc2c99e4ad..08b92cf7057 100644 --- a/lib/spack/spack/spec.py +++ b/lib/spack/spack/spec.py @@ -2166,7 +2166,13 @@ def satisfies(self, other, deps=True, strict=False, strict_deps=False): # A concrete provider can satisfy a virtual dependency. if not self.virtual and other.virtual: - pkg = spack.repo.get(self.fullname) + try: + pkg = spack.repo.get(self.fullname) + except spack.repository.PackageLoadError: + # If we can't get package info on this spec, don't treat + # it as a provider of this vdep. + return False + if pkg.provides(other.name): for provided, when_specs in pkg.provided.items(): if any(self.satisfies(when_spec, deps=False, strict=strict)