Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

3rd-party/romio cannot be built with RHEL7 GNU compilers from Open MPI v5 #11088

Open
ggouaillardet opened this issue Nov 18, 2022 · 1 comment

Comments

@ggouaillardet
Copy link
Contributor

ggouaillardet commented Nov 18, 2022

The root cause is romio requires stdatomic.h that is only available from GCC 4.9 (RHEL7 uses GCC 4.8).

`configure --enable-mca-no-build=io-romio314 does not work as expected ...

$ configure --enable-mca-no-build=io-romio341
[...]
checking which components should be disabled... io-romio341
[...]
+++ Configuring MCA framework io
checking for no configure components in framework io...
checking for m4 configure components in framework io... ompio, romio341

--- MCA component io:ompio (m4 configuration macro)
checking for MCA component io:ompio compile mode... static
checking if MCA component io:ompio can compile... yes

--- MCA component io:romio341 (m4 configuration macro)
checking for MCA component io:romio341 compile mode... static
checking if want ROMIO component... yes
checking if MPI profiling is enabled... yes

*** Configuring ROMIO distribution
configure: OPAL configuring in 3rd-party/romio341
@ggouaillardet ggouaillardet added this to the v5.0.0 milestone Nov 18, 2022
ggouaillardet added a commit to ggouaillardet/ompi that referenced this issue Nov 18, 2022
ROMIO 3.4.1 requires <stdatomic.h>, but this is not checked by
the embedded configure, causing a failure at compilation time
if the compiler (such as GCC 4.8 provided by RHEL7 like distros).

Explicitly check for <stdatomic.h> and disable the io/romio341
component and the third party ROMIO if not available.

Refs. open-mpi#11088

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
ggouaillardet added a commit to ggouaillardet/ompi that referenced this issue Nov 21, 2022
ROMIO 3.4.1 requires <stdatomic.h>, but this is not checked by
the embedded configure, causing a failure at compilation time
if the compiler (such as GCC 4.8 provided by RHEL7 like distros).

Explicitly check for <stdatomic.h> and disable the io/romio341
component and the third party ROMIO if not available.

Refs. open-mpi#11088

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
ggouaillardet added a commit to ggouaillardet/ompi that referenced this issue Nov 21, 2022
ROMIO 3.4.1 requires <stdatomic.h>, but this is not checked by
the embedded configure, causing a failure at compilation time
if the compiler (such as GCC 4.8 provided by RHEL7 like distros).

Explicitly check for <stdatomic.h> and disable the io/romio341
component and the third party ROMIO if not available.

Refs. open-mpi#11088

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
ggouaillardet added a commit to ggouaillardet/ompi that referenced this issue Nov 21, 2022
ROMIO 3.4.1 requires <stdatomic.h>, but this is not checked by
the embedded configure, causing a failure at compilation time
if the compiler (such as GCC 4.8 provided by RHEL7 like distros).

Explicitly check for <stdatomic.h> and disable the io/romio341
component and the third party ROMIO if not available.

Refs. open-mpi#11088

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
jsquyres pushed a commit to jsquyres/ompi that referenced this issue Nov 22, 2022
ROMIO 3.4.1 requires <stdatomic.h>, but this is not checked by
the embedded configure, causing a failure at compilation time
if the compiler (such as GCC 4.8 provided by RHEL7 like distros).

Explicitly check for <stdatomic.h> and disable the io/romio341
component and the third party ROMIO if not available.

Refs. open-mpi#11088

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
(cherry picked from commit c2ac975)
@jsquyres jsquyres modified the milestones: v5.0.0, v5.0.1 Oct 30, 2023
@janjust janjust modified the milestones: v5.0.1, v5.0.2 Jan 8, 2024
yli137 pushed a commit to yli137/ompi that referenced this issue Jan 10, 2024
ROMIO 3.4.1 requires <stdatomic.h>, but this is not checked by
the embedded configure, causing a failure at compilation time
if the compiler (such as GCC 4.8 provided by RHEL7 like distros).

Explicitly check for <stdatomic.h> and disable the io/romio341
component and the third party ROMIO if not available.

Refs. open-mpi#11088

Signed-off-by: Gilles Gouaillardet <gilles@rist.or.jp>
@jsquyres jsquyres modified the milestones: v5.0.2, v5.0.3 Feb 13, 2024
@wenduwan
Copy link
Contributor

I believe this should be addressed by #12640 correct?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants