java - 打开 MPI 的 Java 绑定(bind)

标签 java macos openmpi

我正在尝试在运行 Mavericks (OSX 10.9) 的 Macbook Pro 上构建 Open MPI (v.openmpi-1.9a1r29661) 的新 Java 绑定(bind)。我安装了 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,但没有成功。我想知道是否有其他人对 Mavericks 有同样的问题并且能够解决它。

最佳答案

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

  1. OMPI 被硬编码以尝试 dlopen libmpi.so,该名称在 OS X 上是错误的(应该是 libmpi.dylib)。
  2. 即使修复了该问题,我仍然遇到了另一个 Java 错误,需要由 Java 程序员运行。

显然,我们已经很长时间没有在 OS X 上测试 OMPI Java 绑定(bind)了。 :-(

这就是 SVN 主干运行的生活。抱歉!

关于java - 打开 MPI 的 Java 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19928023/

相关文章:

c++ - 有人可以用 open mpi 解释这个 valgrind 输出吗?

java - Spring 启动: web-app + webservice

java - GWT 中的 DataGrid,无法清除它

java - Jenkins 从属重复工作区

html - 如何制作 CSS :active styles work on trackpad taps?

macos -/usr/local/bin没有这样的文件或目录

java - 如何在android中设置自定义对话框的高度和宽度

macos - 带有 -oBatchMode=yes 的 ssh 失败;没有成功 - 没有要求密码

c - MPI_Comm_rank 总是写 0

r - 使用 Snowfall R 初始化 MPI 集群