Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 936168 - sys-cluster/openmpi-5.0.3 fails with USE=cxx - deprecated option
Summary: sys-cluster/openmpi-5.0.3 fails with USE=cxx - deprecated option
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-07-16 19:43 UTC by Attila Tóth
Modified: 2024-07-17 05:43 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Attila Tóth 2024-07-16 19:43:58 UTC
* openmpi-5.0.3.tar.bz2 BLAKE2B SHA512 size ;-) ...                                                                                                                                  [ ok ]
 * checking ebuild checksums ;-) ...                                                                                                                                                  [ ok ]
 * checking auxfile checksums ;-) ...                                                                                                                                                 [ ok ]
 * checking miscfile checksums ;-) ...                                                                                                                                                [ ok ]
 * Using following Fortran compiler:
 *   F77: x86_64-pc-linux-gnu-gfortran
 *   FC:  x86_64-pc-linux-gnu-gfortran
 *
 * OpenMPI has an overwhelming count of configuration options.
 * Don't forget the EXTRA_ECONF environment variable can let you
 * specify configure options if you find them necessary.
 *
>>> Unpacking source...
>>> Unpacking openmpi-5.0.3.tar.bz2 to /var/tmp/portage/sys-cluster/openmpi-5.0.3/work
>>> Source unpacked in /var/tmp/portage/sys-cluster/openmpi-5.0.3/work
>>> Preparing source in /var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3 ...
 * Running elibtoolize in: openmpi-5.0.3/
 *   Applying ppc64le/2.4.4 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/openpmix/
 *   Applying ppc64le/2.4.4 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/openpmix/config/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.3 patch ...
 *   Applying specs/2.4.6 patch ...
 *   Applying fsanitize/2.4.6 patch ...
 *   Applying fuse-ld/2.4.6 patch ...
 *   Applying static-flags/2.4.6 patch ...
 *   Applying werror/2.4.6 patch ...
 *   Applying cxx-pthread/2.4.6 patch ...
 *   Applying color-record/2.4.6-alt patch ...
 *   Applying sed-quote/2.4.6 patch ...
 *   Applying openmp/2.4.6 patch ...
 *   Applying verbose-pic/2.4.7 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/prrte/
 *   Applying ppc64le/2.4.4 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/prrte/config/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.3 patch ...
 *   Applying specs/2.4.6 patch ...
 *   Applying fsanitize/2.4.6 patch ...
 *   Applying fuse-ld/2.4.6 patch ...
 *   Applying static-flags/2.4.6 patch ...
 *   Applying werror/2.4.6 patch ...
 *   Applying cxx-pthread/2.4.6 patch ...
 *   Applying color-record/2.4.6-alt patch ...
 *   Applying sed-quote/2.4.6 patch ...
 *   Applying openmp/2.4.6 patch ...
 *   Applying verbose-pic/2.4.7 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/romio341/
 *   Applying ppc64le/2.4.4 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/romio341/confdb/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.3 patch ...
 *   Applying specs/2.4.6 patch ...
 *   Applying fsanitize/2.4.6 patch ...
 *   Applying fuse-ld/2.4.6 patch ...
 *   Applying static-flags/2.4.6 patch ...
 *   Applying werror/2.4.6 patch ...
 *   Applying cxx-pthread/2.4.6 patch ...
 *   Applying color-record/2.4.6-alt patch ...
 *   Applying sed-quote/2.4.6 patch ...
 *   Applying openmp/2.4.6 patch ...
 *   Applying verbose-pic/2.4.7 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/romio341/mpl/
 *   Applying ppc64le/2.4.4 patch ...
 * Running elibtoolize in: openmpi-5.0.3/3rd-party/romio341/mpl/confdb/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.3 patch ...
 *   Applying specs/2.4.6 patch ...
 *   Applying fsanitize/2.4.6 patch ...
 *   Applying fuse-ld/2.4.6 patch ...
 *   Applying static-flags/2.4.6 patch ...
 *   Applying werror/2.4.6 patch ...
 *   Applying cxx-pthread/2.4.6 patch ...
 *   Applying color-record/2.4.6-alt patch ...
 *   Applying sed-quote/2.4.6 patch ...
 *   Applying openmp/2.4.6 patch ...
 *   Applying verbose-pic/2.4.7 patch ...
 * Running elibtoolize in: openmpi-5.0.3/config/
 *   Applying portage/1.2.0 patch ...
 *   Applying sed/1.5.6 patch ...
 *   Applying as-needed/2.4.3 patch ...
 *   Applying specs/2.4.6 patch ...
 *   Applying fsanitize/2.4.6 patch ...
 *   Applying fuse-ld/2.4.6 patch ...
 *   Applying static-flags/2.4.6 patch ...
 *   Applying werror/2.4.6 patch ...
 *   Applying cxx-pthread/2.4.6 patch ...
 *   Applying color-record/2.4.6-alt patch ...
 *   Applying sed-quote/2.4.6 patch ...
 *   Applying openmp/2.4.6 patch ...
 *   Applying verbose-pic/2.4.7 patch ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3 ...
 * econf: updating openmpi-5.0.3/3rd-party/prrte/config/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating openmpi-5.0.3/3rd-party/prrte/config/config.sub with /usr/share/gnuconfig/config.sub
 * econf: updating openmpi-5.0.3/3rd-party/openpmix/config/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating openmpi-5.0.3/3rd-party/openpmix/config/config.sub with /usr/share/gnuconfig/config.sub
 * econf: updating openmpi-5.0.3/3rd-party/romio341/confdb/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating openmpi-5.0.3/3rd-party/romio341/confdb/config.sub with /usr/share/gnuconfig/config.sub
 * econf: updating openmpi-5.0.3/3rd-party/romio341/mpl/confdb/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating openmpi-5.0.3/3rd-party/romio341/mpl/confdb/config.sub with /usr/share/gnuconfig/config.sub
 * econf: updating openmpi-5.0.3/config/config.guess with /usr/share/gnuconfig/config.guess
 * econf: updating openmpi-5.0.3/config/config.sub with /usr/share/gnuconfig/config.sub
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --datarootdir=/usr/share --disable-dependency-tracking --disable-silent-rules --disable-static --docdir=/usr/share/doc/openmpi-5.0.3 --htmldir=/usr/share/doc/openmpi-5.0.3/html --with-sysroot=/ --libdir=/usr/lib64 --disable-mpi-java --enable-mpi-fortran=all --enable-orterun-prefix-by-default --enable-pretty-print-stacktrace --sysconfdir=/etc/openmpi --with-hwloc=external --with-libevent=external --disable-heterogeneous --enable-mpi-cxx --enable-ipv6 --enable-peruse --disable-io-romio --without-cma --without-cuda --with-valgrind --without-knem --without-tm --without-slurm

============================================================================
== Configuring Open MPI
============================================================================

*** Prerequisites
checking for a sed that does not truncate output... /usr/bin/sed
checking for perl... perl

*** Startup tests
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking target system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/lib/portage/python3.12/ebuild-helpers/xattr/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking whether UID '250' is supported by ustar format... yes
checking whether GID '250' is supported by ustar format... yes
checking how to create a ustar tar archive... gnutar
checking whether make supports nested variables... (cached) yes
checking directory of build tree... /var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3
checking directory of source tree... .
checking directory of prefix... /usr

*** Checking versions
checking for repo version... v5.0.3
checking Open MPI version... 5.0.3
checking Open MPI release date... Apr 08, 2024
checking Open MPI repository version... v5.0.3
checking MPI Standard version... 3.1
checking for repo version... v5.0.3
checking Open SHMEM version... 5.0.3
checking Open SHMEM release date... Apr 08, 2024
checking Open SHMEM repository version... v5.0.3
checking for repo version... v5.0.3
checking Open Portable Access Layer version... 5.0.3
checking Open Portable Access Layer release date... Apr 08, 2024
checking Open Portable Access Layer repository version... v5.0.3
checking for bootstrap Autoconf version... 2.71
checking for bootstrap Automake version... 1.16
checking for bootstrap Libtool version... 2.4.6

*** Initialization, setup
configure: builddir: /var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3
configure: srcdir: /var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3
configure: WARNING: An MPI C++ bindings-related command line option
configure: WARNING: was given to "configure".
configure: WARNING:
configure: WARNING: This command line option will be removed in a future
configure: WARNING: version of Open MPI; you should discontinue using it.
configure: WARNING: You have been warned!
configure: WARNING:
configure: WARNING: The MPI C++ bindings were deprecated in the MPI-2.2
configure: WARNING: standard in 2009, and removed from the MPI-3.0
configure: WARNING: standard in 2012.  The MPI C++ bindings were then
configure: WARNING: removed from Open MPI v5.0.0 in 2022.
configure: WARNING:
configure: WARNING: If you need support for the MPI C++ bindings, you
configure: WARNING: will need to use an older version of Open MPI.
configure: error: Build cannot continue.

!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3/config.log
 * ERROR: sys-cluster/openmpi-5.0.3::gentoo failed (configure phase):
 *   econf failed
 *
 * Call stack:
 *               ebuild.sh, line  136:  Called src_configure
 *             environment, line 1920:  Called econf '--disable-mpi-java' '--enable-mpi-fortran=all' '--enable-orterun-prefix-by-default' '--enable-pretty-print-stacktrace' '--sysconfdir=/etc/openmpi' '--with-hwloc=external' '--with-libevent=external' '--disable-heterogeneous' '--enable-mpi-cxx' '--enable-ipv6' '--enable-peruse' '--disable-io-romio' '--without-cma' '--without-cuda' '--with-valgrind' '--without-knem' '--without-tm' '--without-slurm'
 *        phase-helpers.sh, line  719:  Called __helpers_die 'econf failed'
 *   isolated-functions.sh, line  112:  Called die
 * The specific snippet of code:
 *              die "$@"
 *
 * If you need support, post the output of `emerge --info '=sys-cluster/openmpi-5.0.3::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=sys-cluster/openmpi-5.0.3::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/sys-cluster/openmpi-5.0.3/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/sys-cluster/openmpi-5.0.3/temp/environment'.
 * Working directory: '/var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3'
 * S: '/var/tmp/portage/sys-cluster/openmpi-5.0.3/work/openmpi-5.0.3'


Reproducible: Always




USE=-cxx makes it compile. Note that prior version sys-cluster/openmpi-4.x had no problems with cxx, it became problematic only with the advent of 5.x.
Comment 1 Attila Tóth 2024-07-16 19:46:11 UTC
Another observation: virtual/mpi tries to pull in mpich conflicting with new openmpi. It also has cxx USE flag, but the conflict now may rather be threads...
Comment 2 Larry the Git Cow gentoo-dev 2024-07-17 05:43:31 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3f705371ca6c8dfe69107584905f4b4f5de9cd51

commit 3f705371ca6c8dfe69107584905f4b4f5de9cd51
Author:     Eli Schwartz <eschwartz@gentoo.org>
AuthorDate: 2024-07-16 20:23:13 +0000
Commit:     Eli Schwartz <eschwartz@gentoo.org>
CommitDate: 2024-07-17 05:43:04 +0000

    sys-cluster/openmpi: remove USE=cxx support in 5.x
    
    It has been removed upstream, with a note that it was deprecated in the
    MPI-2.2 (2009) standard and removed in the MPI-3.0 (2012) standard and
    as such won't be shipped by openmpi.
    
    Attempting to configure with it anyway does produce a fatal configure
    error.
    
    Closes: https://bugs.gentoo.org/936168
    Signed-off-by: Eli Schwartz <eschwartz@gentoo.org>

 sys-cluster/openmpi/openmpi-5.0.3.ebuild | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)