Mark GCC7 and newer as conflicting with rhel6 without binutils (#14706)
When building gcc7 and gcc8 on RHEL6 with Spack and installing it as a spack-available compiler, OpenBLAS will fail to compile because GCC generates newer instructions than rhel6's `as` assembler knows about (e.g. "vpermpd"). Building gcc8 with binutils succeeds, and it generates a GCC that can then successfully build OpenBLAS. This is also expected to work for gcc7 on RHEL6.
This commit is contained in:
parent
17fbf78593
commit
09a1f09fd0
1 changed files with 5 additions and 0 deletions
|
@ -193,6 +193,11 @@ class Gcc(AutotoolsPackage, GNUMirrorPackage):
|
||||||
# Binutils can't build ld on macOS
|
# Binutils can't build ld on macOS
|
||||||
conflicts('+binutils', when='platform=darwin')
|
conflicts('+binutils', when='platform=darwin')
|
||||||
|
|
||||||
|
# Newer binutils than RHEL's is required to run `as` on some instructions
|
||||||
|
# generated by new GCC (see https://github.com/spack/spack/issues/12235)
|
||||||
|
conflicts('~binutils', when='@7: os=rhel6',
|
||||||
|
msg='New GCC cannot use system assembler on RHEL6')
|
||||||
|
|
||||||
if sys.platform == 'darwin':
|
if sys.platform == 'darwin':
|
||||||
# Fix parallel build on APFS filesystem
|
# Fix parallel build on APFS filesystem
|
||||||
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
|
# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81797
|
||||||
|
|
Loading…
Reference in a new issue