Skip to content

Installation issue: clingo fails to build on gcc 4.8.5 (Red Hat's GCC version 4.8.5-44) on CentOS 7 #20069

@robertu94

Description

@robertu94

Thanks for all your hard work on spack, and on the new concertizer specifically; Spack is one of my favorite HPC tools.

Steps to reproduce the issue

#on CentOS-7 with epel-release installed
$ spack install clingo@master

Information on your system

  • Spack: 0.16.0-57-348cbe1
  • Python: 2.7.5
  • Platform: linux-centos7-skylake
  • Concretizer: original
packages:
  gcc:
    externals:
    - spec: [email protected] languages=c,c++,fortran
      prefix: /usr
      extra_attributes:
        compilers:
          c: /usr/bin/x86_64-redhat-linux-gcc
          cxx: /usr/bin/g++
          fortran: /usr/bin/gfortran
  git:
    externals:
    - spec: [email protected]~tcltk
      prefix: /usr
  cmake:
    externals:
    - spec: [email protected]
      prefix: /usr
  tar:
    externals:
    - spec: [email protected]
      prefix: /usr
  python:
    externals:
    - spec: [email protected]+bz2+ctypes+dbm+lzma+nis+pyexpat+readline+sqlite3+ssl~tix~tkinter+uuid+zlib
      prefix: /usr
  diffutils:
    externals:
    - spec: [email protected]
      prefix: /usr
  cpio:
    externals:
    - spec: [email protected]
      prefix: /usr
  perl:
    externals:
    - spec: [email protected]~cpanm+shared+threads
      prefix: /usr
  xz:
    externals:
    - spec: [email protected]
      prefix: /usr
  findutils:
    externals:
    - spec: [email protected]
      prefix: /usr
  texinfo:
    externals:
    - spec: [email protected]
      prefix: /usr
  bash:
    externals:
    - spec: [email protected]
      prefix: /usr
  pkg-config:
    externals:
    - spec: [email protected]
      prefix: /usr

Additional information

Some of the groups that we collaborate with still use CentOS-7 (or equivalent versions of Scientific Linux), and bootstrapping clingo fails with a very unclear build error messages because gcc 4.8.5 only supports some of C++14, and not enough to build clingo. Specifically it is missing some changes in c++14 that relaxed rules about exception specifiers in defaulted operators and some bug fixes for using & to capture variadic template arguments. It seems that you tried to catch these problems with the try catch block looking for the c++14 compiler flag, but that didn't seem to be enough.

However before these issues, Clingo won't even configure without modifying the package to have

depends_on('[email protected]:', type='build')

Since the system installed version of cmake on CentOS7 is cmake 2.8.12.2

If clingo is going to be bootstrapped in the future, it seems crucial to me that the error messages be intelligible.

@tgamblin

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