Skip to content

Installation issue: gcc@16 % gcc+mold ^mold@2.38 fails, so do attempts to constraint mold's version #5453

Description

@yizeyi18

Steps to reproduce the issue

No response

Error message

see rui314/mold#1545 . The error is spack-independent.

Information on your system

Additional information

The build error is totally mold's fault, mold @:2.40 always fails building gcc@16.

The spack-side issue is, when trying to constraint spack to refuse such spec, none of below works:

requires("mold@2.41:", when="@16: %gcc+mold")
requires("mold@2.41:", when="@16: ^gcc+mold")
requires("mold@2.41:", when="@16: +mold")
requires("mold@2.41:", when="@16:")
requires("mold@2.41:", when="@16: %[virtuals=c,cxx] gcc+mold")
requires("%[virtuals=c,cxx] gcc+mold %mold@2.41:", when="@16: %[virtuals=c,cxx] gcc+mold")
requires("^[virtuals=c,cxx] gcc+mold %mold@2.41:", when="@16: %[virtuals=c,cxx] gcc+mold")
conflicts("mold@:2.40", when="@16: %gcc+mold")
conflicts("mold@:2.40", when="@16: ^gcc+mold")
conflicts("mold@:2.40", when="@16: %gcc+mold")
conflicts("%gcc+mold ^mold@:2.40", when="@16: %gcc+mold")
conflicts("^gcc+mold %mold@:2.40", when="@16: %gcc+mold")
conflicts("%[virtuals=c,cxx] gcc+mold %mold@:2.40", when="@16: %[virtuals=c,cxx] gcc+mold")

Some of them accepts gcc@16 % gcc+mold and concretized a spec using gcc+mold %mold@2.38; the rest always fails on gcc@16 + mold.

To constraint spec of a build dependency, how to write that?My attempts failed; it may need some spack maintainer's help. @michaelkuhn @alalazo

General information

  • I have run spack debug report and reported the version of Spack/Python/Platform
  • I have run spack maintainers <name-of-the-package> and @mentioned any maintainers
  • I have uploaded the build log and environment files
  • I have searched the issues of this repo and believe this is not a duplicate

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions