Ompi: openmpi 4.0.0: missing header: $PWD/openmpi-4.0.0/ompi/mca/io/romio321/romio/include/mpio.h:51:28: fatal error: ompi_grequestx.h: No such file or directory

Created on 27 Dec 2018  路  5Comments  路  Source: open-mpi/ompi

Background information

Trying to install openmpi by hand for one of my scientific users.

What version of Open MPI are you using? (e.g., v1.10.3, v2.1.0, git branch name and hash, etc.)

v4.0.0

Describe how Open MPI was installed (e.g., from a source/distribution tarball, from a git clone, from an operating system distribution package, etc.)

tarball from open-mpi website

Please describe the system on which you are running

  • Operating system/version: Linux Centos 7.5
  • Computer hardware: Intel(R) Xeon(R) CPU E5-2683 v4 @ 2.10GHz, 64 cores total
  • Network type: cisco gbit

Details of the problem

Please describe, in detail, the problem that you are having, including the behavior you expect to see, the actual behavior that you are seeing, steps to reproduce the problem, etc. It is most helpful if you can attach a small program that a developer can use to reproduce your problem.

download && check checksum && untarball && cd openmpi-4.0.0

./configure --prefix=/lsc/openmpi/4.0.0 --enable-branch-probabilities --enable-pretty-print-stacktrace --enable-pty-support --enable-weak-symbols --enable-dlopen --enable-show-load-errors-by-default --enable-heterogeneous --enable-binaries --enable-script-wrapper-compilers --enable-per-user-config-files --enable-ipv6 --enable-orterun-prefix-by-default --enable-mpirun-prefix-by-default --enable-mpi-interface-warning --enable-sparse-groups --enable-peruse --enable-mpi-fortran --enable-mpi-cxx --enable-mpi-cxx-seek --enable-mpi1-compatibility --enable-grequest-extensions --enable-spc --enable-shared --enable-static --enable-wrapper-rpath --enable-wrapper-runpath --enable-cxx-exceptions --enable-builtin-atomics --enable-openib-udcm --enable-openib-rdmacm --enable-openib-rdmacm-ibaddr --enable-btl-portals4-flow-control --enable-opal-btl-usnic-unit-tests --enable-event-evport --enable-event-debug --enable-hwloc-pci --enable-visibility --enable-memchecker --enable-install-libpmix --enable-pmix-timing --enable-ft --enable-mpi-ext=affinity,cuda,pcollreq --enable-visibility --enable-fast-install --with-libnl --with-devel-headers --with-max-processor-name=256 --with-max-error-string=256 --with-max-object-name=64 --with-max-info-key=36 --with-max-info-val=256 --with-max-port-name=1024 --with-max-datarep-string=128 --with-zlib-libdir=/lsc/zlib/lib --with-cuda=/lsc/nvidia/cuda/8.0-GA1 --with-pmix=external --with-pmix-libdir=/usr/lib64 --with-mpi-param-check=always --with-oshmem-param-check=always --with-jdk-dir=/usr/lib/jvm/java-1.8.0 --with-cs-fs --with-ofi-libdir=/usr/lib64 --with-xpmem --with-valgrind --with-pmi=/lsc/pmix/3.1 --with-slurm=/lsc/slurm/18.08.3 --with-tm --with-sge --with-moab --with-singularity --with-pvfs2 --with-psm --with-psm2 --with-ompi-pmix-rte --with-orte --with-treematch=/lsc/treematch/1.3 LDFLAGS='-L/lsc/pmix/3.1/lib' CFLAG='-I/lsc/pmix/3.1/include'

all other software precompiled already

make # not a parallel build

... wait a bit

make[4]: Entering directory `/lsc/sources/openmpi/4.0.0/openmpi-4.0.0/ompi/mca/io/romio321/romio'
  CC       mpi-io/close.lo
In file included from ./adio/include/adio.h:73:0,
                 from mpi-io/mpioimpl.h:17,
                 from mpi-io/close.c:8:
/lsc/sources/openmpi/4.0.0/openmpi-4.0.0/ompi/mca/io/romio321/romio/include/mpio.h:51:28: fatal error: ompi_grequestx.h: No such file or directory
 #include "ompi_grequestx.h"

File exists in github repo:

https://github.com/open-mpi/ompi/blob/master/ompi/mca/io/romio321/romio/include/ompi_grequestx.h

but not in the tarball

Commenting the header out, allows for compilation to proceed normally.

importing the ompi_grequestx.h header from the github repo to the tarbal allows for uninhibited compilation, but it basically does nothing.

master v4.0.x bug

All 5 comments

Quite definitely a bug on both master and v4.0.x. Thanks for reporting!

PR coming shortly to fix it.

BTW, @georgemarselis, you win the award for using the most configure command line switches I have ever seen.

wow

@jsquyres hehehe, I like to explicitly add all flags, even if they are enabled by default. Check out my and-the-kitchen-sink statement here for gcc, if you wanna see a train: https://github.com/georgemarselis/openlava-macosx/blob/develop-make-recursive/CFLAGS

as a side-remark: I think it might be worthwhile to have a compile test unit that allows compiling certain permutations and/or combinations of switches. I am getting "undefined reference `mca_btl_sm_component' " errors in v3.1.3

I actually do a lot of nightly testing with various permutations of ./configure CLI options (see mtt.open-mpi.org -- although Cisco's MTT is currently disabled for our annual holiday shut down; I'll be re-starting it next week), but I had missed the two identified by this issue. I've added them to the lineup of nightly tests; they'll get activated next week.

Do you have another CLI option that is causing a problem?

I will open another ticket for the separate issue I am having. Let's close this one.

Was this page helpful?
0 / 5 - 0 ratings