Opened 3 years ago

Closed 3 years ago

#62214 closed defect (fixed)

openmpi-default +gccdevel fails to build on aarch64 with "error: address argument to atomic operation must be a pointer to integer or pointer"

Reported by: platipodium (Carsten Lemmen) Owned by: mascguy (Christopher Nielsen)
Priority: Normal Milestone:
Component: ports Version: 2.6.4
Keywords: arm64, aarch64 Cc:
Port: openmpi-default

Description

This could be an upstream issue (but I am not sure)

opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_openmpi/openmpi-default/work/openmpi-4.1.0/opal/mca/pmix/pmix3x/pmix/src/atomics/sys/gcc_builtin/atomic.h:197:12: error: address argument to atomic operation must be a pointer to integer or pointer ('pmix_atomic_int128_t *' (aka '_Atomic(pmix_int128_t) *') invalid)
:info:build     return __atomic_compare_exchange_n (addr, oldval, newval, false,
:info:build            ^                            ~~~~
:info:build 1 error generated.

Attachments (2)

main.log (346.6 KB) - added by platipodium (Carsten Lemmen) 3 years ago.
openmpi_4_1_1rc1.patch (1.1 KB) - added by gfiumara (Greg Fiumara) 3 years ago.
Update openmpi Portfile to 4.1.1rc1

Download all attachments as: .zip

Change History (10)

Changed 3 years ago by platipodium (Carsten Lemmen)

Attachment: main.log added

comment:1 Changed 3 years ago by mf2k (Frank Schima)

Cc: mascguy removed
Owner: set to mascguy
Status: newassigned

comment:2 Changed 3 years ago by mascguy (Christopher Nielsen)

This certainly could be an upstream issue. Is building this port using an upstream gcc, essential for your work? (I'm simply trying to prioritize this, vs. other issues.)

comment:3 Changed 3 years ago by platipodium (Carsten Lemmen)

Thanks for looking into this. It is in fact currently a complete showstopper for my work.

comment:4 Changed 3 years ago by mascguy (Christopher Nielsen)

It looks like port gcc-devel was updated to a newer release, just a few hours ago. Can you try updating your ports, followed by another install attempt?

comment:5 Changed 3 years ago by platipodium (Carsten Lemmen)

Sure, just updated

sh-3.2# port installed |grep gcc-devel
  gcc-devel @11-20210207_0 (active)
  libgcc-devel @11-20210207_0 (active)

But the error persists.

:info:build In file included from /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_openmpi/openmpi-default/work/openmpi-4.1.0/opal/mca/pmix/pmix3x/pmix/src/atomics/sys/atomic.h:168:
:info:build /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_science_openmpi/openmpi-default/work/openmpi-4.1.0/opal/mca/pmix/pmix3x/pmix/src/atomics/sys/gcc_builtin/atomic.h:197:12: error: address argument to atomic operation must be a pointer to integer or pointer ('pmix_atomic_int128_t *' (aka '_Atomic(pmix_int128_t) *') invalid)
:info:build     return __atomic_compare_exchange_n (addr, oldval, newval, false,
:info:build            ^                            ~~~~
:info:build 1 error generated.

comment:6 Changed 3 years ago by gfiumara (Greg Fiumara)

Appears to be upstream issue (https://github.com/open-mpi/ompi/issues/8410), resolved in 4.1.1rc1. Attaching a Portfile diff for those who can't wait for an official 4.1.1 release. Tested on macOS 11.2.1 on M1 Mac Mini.

Changed 3 years ago by gfiumara (Greg Fiumara)

Attachment: openmpi_4_1_1rc1.patch added

Update openmpi Portfile to 4.1.1rc1

comment:7 Changed 3 years ago by mascguy (Christopher Nielsen)

comment:8 Changed 3 years ago by Christopher Nielsen <mascguy@…>

Resolution: fixed
Status: assignedclosed

In ed9c96aae95bb1e0a0551f5d315a2b2be3925773/macports-ports (master):

openmpi: update to 4.1.1; add new variants heterogeneous and mpi1

  • Enable use of published binaries for all compiler-specific subports
  • Add lib dependency for zlib, and corresponding configure flag
  • Ensure target compilers are added to depends_lib

Fixes: #62795
Fixes: #62788
Fixes: #62783
Fixes: #62214
Fixes: #62070
Fixes: #60597
Fixes: #59547

Note: See TracTickets for help on using tickets.