Opened 2 years ago

Closed 17 months ago

#70185 closed defect (fixed)

netcdf +mpich fails to find MPI_CXX

Reported by: Schamschula (Marius Schamschula) Owned by: eborisch (Eric A. Borisch)
Priority: Normal Milestone:
Component: ports Version: 2.9.3
Keywords: Cc: mascguy (Christopher Nielsen), Dave-Allured (Dave Allured)
Port: netcdf mpich-default

Description

When attempting to build netcdf +dap+mpich+netcdf4 against mpich-default @4.1.2_2+gcc13 I get the following error:

-- Found MPI_C: /opt/local/bin/mpicc-mpich-mp (found version "4.0")
-- Checking for module 'mpi-cxx'
--   No package 'mpi-cxx' found
-- Could NOT find MPI_CXX (missing: MPI_CXX_LIB_NAMES MPI_CXX_HEADER_DIR MPI_CXX_WORKS) 
CMake Error at /opt/local/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:230 (message):
  Could NOT find MPI (missing: MPI_CXX_FOUND) (found version "4.0")
Call Stack (most recent call first):
  /opt/local/share/cmake-3.29/Modules/FindPackageHandleStandardArgs.cmake:600 (_FPHSA_FAILURE_MESSAGE)
  /opt/local/share/cmake-3.29/Modules/FindMPI.cmake:1837 (find_package_handle_standard_args)
  CMakeLists.txt:1489 (FIND_PACKAGE)

I have tried any number of cmake arguments, with no luck. See: https://cmake.org/cmake/help/latest/module/FindMPI.html

Attachments (1)

main.log (107.2 KB) - added by eborisch (Eric A. Borisch) 18 months ago.
Configure success

Download all attachments as: .zip

Change History (7)

comment:1 Changed 18 months ago by Dave-Allured (Dave Allured)

Cc: Dave-Allured added

comment:2 Changed 18 months ago by Dave-Allured (Dave Allured)

Duplicate of #66209

Changed 18 months ago by eborisch (Eric A. Borisch)

Attachment: main.log added

Configure success

comment:3 Changed 18 months ago by eborisch (Eric A. Borisch)

Hrmm. For me, sudo port -v configure netcdf +mpich succeeds and locates mpi-cxx? (Log attached.)

-- Found LibXml2: /opt/local/lib/libxml2.dylib (found version "2.13.5")
-- Found MPI_C: /opt/local/bin/mpicc-mpich-mp (found version "4.1")
-- Found MPI_CXX: /opt/local/lib/mpich-mp/libmpicxx.dylib (found version "4.1")
-- Found MPI: TRUE (found version "4.1")

(builds OK, too.)

/opt/local/lib/libnetcdf.dylib:
	/opt/local/lib/libnetcdf.19.dylib (compatibility version 19.0.0, current version 19.0.0)
	/opt/local/lib/libhdf5_hl.310.dylib (compatibility version 311.0.0, current version 311.5.0)
	/opt/local/lib/libhdf5.310.dylib (compatibility version 316.0.0, current version 316.0.0)
	/opt/local/lib/libaec/lib/libsz.2.dylib (compatibility version 3.0.0, current version 3.1.0)
	/opt/local/lib/libz.1.dylib (compatibility version 1.0.0, current version 1.3.1)
	/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1351.0.0)
	/opt/local/lib/libblosc.1.dylib (compatibility version 1.0.0, current version 1.21.6)
	/opt/local/lib/libzstd.1.dylib (compatibility version 1.0.0, current version 1.5.6)
	/opt/local/lib/libbz2.1.0.dylib (compatibility version 1.0.0, current version 1.0.8)
	/opt/local/lib/libcurl.4.dylib (compatibility version 13.0.0, current version 13.0.0)
	/opt/local/lib/libxml2.2.dylib (compatibility version 16.0.0, current version 16.5.0)
	/opt/local/lib/mpich-mp/libmpi.12.dylib (compatibility version 17.0.0, current version 17.3.0)
	/opt/local/lib/mpich-mp/libpmpi.12.dylib (compatibility version 17.0.0, current version 17.3.0)
Last edited 18 months ago by eborisch (Eric A. Borisch) (previous) (diff)

comment:4 Changed 18 months ago by Dave-Allured (Dave Allured)

Maybe missing dependency? Which port provided "libmpicxx.dylib" in your current install? Was that fetched automatically, or did you have it previously installed?

comment:5 Changed 18 months ago by eborisch (Eric A. Borisch)

It's from mpich-default

$ port provides /opt/local/lib/mpich-mp/libmpicxx.dylib
/opt/local/lib/mpich-mp/libmpicxx.dylib is provided by: mpich-default

And it's on the lib-dep list:

$ port info netcdf +mpich
netcdf @4.9.2_5 (science)
Variants:             [+]cdf5, clang13, clang14, clang15, clang16, clang17, clang18, clang19, [+]dap, debug, gcc14, hdf4, +mpich, [+]netcdf4, openmpi, universal

Description:          NetCDF (network Common Data Form) is a set of software libraries and machine-independent data formats that support the creation, access, and sharing of array-oriented
                      scientific data.
Homepage:             http://www.unidata.ucar.edu/software/netcdf/

Build Dependencies:   cmake, m4
Library Dependencies: mpich-default, hdf5, blosc, bzip2, zlib, zstd, curl, libxml2
Platforms:            darwin
License:              Permissive
Maintainers:          Email: takeshi@macports.org, GitHub: tenomoto
                      Policy: openmaintainer

comment:6 Changed 17 months ago by eborisch (Eric A. Borisch)

Resolution: fixed
Status: assignedclosed
Note: See TracTickets for help on using tickets.