Skip to content

Commit 12cef1f

Browse files
committed
configury: explicitly disable gcc < v4.8.1
NOTE: The default GCC that ships in RHEL is v4.8.5. Cisco regularly tests GCC v4.8.1, and it works fine. We know that PRTE and PMIX do not compile with RHEL 6's default GCC (v4.4.7). We know that v4.8.x works and 4.4.7 doesn't, so set the lower bound support for 4.8.1. Specifically: abort configure if the compiler is GCC and the version is < v4.8.1. Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
1 parent a086a5c commit 12cef1f

File tree

3 files changed

+20
-1
lines changed

3 files changed

+20
-1
lines changed

NEWS

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@ Master (not on release branches yet)
7777

7878
v5.0.0rc1 -- September, 2021
7979
--------------------
80+
8081
- ORTE, the underlying OMPI launcher has been removed, and replaced
8182
with PRTE.
8283
- Reworked how Open MPI integrates with 3rd party packages.
@@ -94,6 +95,8 @@ v5.0.0rc1 -- September, 2021
9495
- Various ROMIO v3.4.1 updates.
9596
- Use Pandoc to generate manpages
9697
- 32 bit atomics are now only supported via C11 compliant compilers.
98+
- Explicitly disable support for GNU gcc < v4.8.1 (note: the default
99+
gcc compiler that is included in RHEL 7 is v4.8.5).
97100
- Do not build Open SHMEM layer when there are no SPMLs available.
98101
Currently, this means the Open SHMEM layer will only build if
99102
the UCX library is found.

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ base as of this writing (April 2020):
201201

202202
* On platforms other than x86-64, AArch64 (64-bit ARM), and PPC64,
203203
Open MPI requires a compiler that either supports C11 atomics or
204-
the GCC `__atomic` atomics (e.g., GCC >= v4.7.2).
204+
the GCC `__atomic` atomics (e.g., GCC >= v4.8.1).
205205

206206
* 32-bit platforms are only supported with a recent compiler that
207207
supports C11 atomics. This includes gcc 4.9.x+ (gcc 6.x or newer

configure.ac

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -600,6 +600,22 @@ opal_show_subtitle "Compiler characteristics"
600600
OPAL_CHECK_ATTRIBUTES
601601
OPAL_CHECK_COMPILER_VERSION_ID
602602

603+
# Open MPI only supports GCC >=v4.8.1. Notes:
604+
#
605+
# 1. The default compiler that comes with RHEL 7 is v4.8.5 (version ID
606+
# 264197).
607+
# 2. We regularly test with GCC v4.8.1 (version ID 264193).
608+
# 3. GCC 4.8.0 probably also works; we just haven't tested it.
609+
#
610+
# Since we regularly test with 4.8.1, that's what we check for.
611+
AS_IF([test "$opal_cv_compiler_FAMILYNAME" = "GNU" && \
612+
test "$opal_cv_compiler_VERSION" -lt 264193],
613+
[AC_MSG_WARN([Open MPI no longer supports versions of the GNU compiler suite])
614+
AC_MSG_WARN([less than v4.8.1.])
615+
AC_MSG_WARN([Please upgrade your GNU compiler suite, or use])
616+
AC_MSG_WARN([a different compiler to build Open MPI.])
617+
AC_MSG_ERROR([Cannot continue])
618+
])
603619

604620
##################################
605621
# Java MPI Binding request

0 commit comments

Comments
 (0)