打开MPI的Java绑定

时间:2013-11-12 11:32:33

标签: java macos openmpi

我正在尝试在运行Mavericks的Macbook Pro(OSX 10.9)上构建Open MPI(v.openmpi-1.9a1r29661)的新Java绑定。我安装了JDK 7:

^_^:examples demirelo $ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build 1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build 24.45-b08, mixed mode)

我使用该命令配置了OMPI:

./configure --enable-mpi-java --with-platform=optimized --with-jdk-dir=/Library/Java/JavaVirtualMachines/jdk1.7.0_45.jdk/Contents/Home --prefix=/Users/demirelo/libs/openmpi
接下来是通常的嫌疑人:

make all install

当我尝试运行HelloWorld示例时,我收到了以下运行时错误:

^_^:examples demirelo $ ../bin/mpijavac Hello.java 
^_^:examples demirelo $ ../bin/mpirun -np 1 java Hello 
JAVA BINDINGS FAILED TO LOAD REQUIRED LIBRARIES
-------------------------------------------------------
Primary job  terminated normally, but 1 process returned
a non-zero exit code.. Per user-direction, the job has been aborted.

此外,〜/ .bash_profile具有到/ lib文件夹的正确路径。

export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/Users/demirelo/libs/openmpi/lib/

图书馆失败是非常神秘的。之前,我能够在Lion上构建稍微旧版本(openmpi-1.9a1r28578)并仍然在Mavericks上使用它。这次我需要一个新编译的OMPI,但没有成功。我想知道是否有其他人与小牛队有同样的问题并且能够解决它。

1 个答案:

答案 0 :(得分:2)

这似乎是Open MPI中的一个错误,它至少包含两个问题:

  1. OMPI是硬编码试图dlopen libmpi.so,这是OS X上的错误名称(它应该是libmpi.dylib)。
  2. 即使我解决了这个问题,我也遇到了Java程序员需要运行的另一个Java错误。
  3. 显然,我们很长时间没有在OS X上测试过OMPI Java绑定。 : - (

    这是对SVN主干运行的生命。遗憾!