- 
                Notifications
    You must be signed in to change notification settings 
- Fork 929
Closed
Description
Hi there,
The latest version of openmpi 2.x (2.1.6) fails to build when options --enable-java-mpi and --with-devel-headers are both active.
Background information
What version of Open MPI are you using? (e.g., v1.10.3, v2.1.0, git branch name and hash, etc.)
openmpi v2.1.6 (latest 2.x)
Describe how Open MPI was installed (e.g., from a source/distribution tarball, from a git clone, from an operating system distribution package, etc.)
from the source/distribution tarball https://download.open-mpi.org/release/open-mpi/v2.1/openmpi-2.1.6.tar.gz
Please describe the system on which you are running
- Operating system/version: debian 9 (stretch)
- Computer hardware: apple xserve 2,1
- Network type: 1Gb ethernet
Details of the problem
symptoms
Here are the last lines displayed by the failed build :
make[3]: Entering directory '/root/bug2587/builds/without-debian/build1/openmpi-2.1.6/ompi/mpi/java/java'
  JAVAC    MPI.class
JAVADOC    doc
make  all-am
make[4]: Entering directory '/root/bug2587/builds/without-debian/build1/openmpi-2.1.6/ompi/mpi/java/java'
    JAR    mpi.jar
make[4]: *** No rule to make target 'mpi_CartParms.h', needed by 'all-am'.  Stop.
make[4]: Leaving directory '/root/bug2587/builds/without-debian/build1/openmpi-2.1.6/ompi/mpi/java/java'
Makefile:1751: recipe for target 'all' failed
make[3]: *** [all] Error 2
make[3]: Leaving directory '/root/bug2587/builds/without-debian/build1/openmpi-2.1.6/ompi/mpi/java/java'
Makefile:1659: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/root/bug2587/builds/without-debian/build1/openmpi-2.1.6/ompi/mpi/java'
Makefile:3348: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/root/bug2587/builds/without-debian/build1/openmpi-2.1.6/ompi'
Makefile:1808: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
root@physix48:~/bug2587# cat ./build-without-debian.bash 
way to reproduce
Here's the script that I used to reproduce the problem:
#!/bin/bash
mkdir -p ~/bug2587/builds/without-debian/build1
cd ~/bug2587/builds/without-debian/build1
wget https://download.open-mpi.org/release/open-mpi/v2.1/openmpi-2.1.6.tar.gz
zcat openmpi-2.1.6.tar.gz | tar xvf -
cd openmpi-2.1.6
./configure --enable-mpi-java --with-devel-headers
makenotes:
Here's a portion of the output of configure related to java:
*** Java compiler
checking OS X/macOS locations... not found
checking Linux locations... found (/usr/lib/jvm/java-1.8.0-openjdk-amd64/include)
checking --with-jdk-bindir value... sanity check ok (/usr/bin)
checking --with-jdk-headers value... sanity check ok (/usr/lib/jvm/java-1.8.0-openjdk-amd64/include)
checking for javac... /usr/bin/javac
checking for jar... /usr/bin/jar
checking for javadoc... /usr/bin/javadoc
checking for javah... /usr/bin/javah
checking javac -h... yes
checking jni.h usability... yes
checking jni.h presence... yes
checking for jni.h... yes
checking Java support available... yes
*** Java MPI bindings
checking if want Java bindings... yes
checking if shared libraries are enabled... yes
checking if Java support was found... yes
checking TargetConditionals.h usability... no
checking TargetConditionals.h presence... no
checking for TargetConditionals.h... no
checking for Dl_info... yes
configure: WARNING: ******************************************************
configure: WARNING: *** Java MPI bindings are provided on a provisional
configure: WARNING: *** basis.  They are NOT part of the current or
configure: WARNING: *** proposed MPI standard.  Continued inclusion of
configure: WARNING: *** the Java MPI bindings in Open MPI is contingent
configure: WARNING: *** upon user interest and developer support.
configure: WARNING: ******************************************************