1

我目前正在使用 OpenMPI 库在 Fortran 和 C/C++ 的混合中开发一个简单的数据同步器。就我所见,同步器可以正确编译和链接:

f95 -o fortran_mpi_test *.o -L/usr/lib/gcc/x86_64-redhat-linux/4.1.1/ 
    -L/usr/lib64/openmpi/1.4-gcc/lib/ -lmpi -lmpi_cxx -lstdc++

但是,当我在同一机器上执行生成的可执行文件时,我收到一条错误消息,指出找不到共享库之一。ldd证实了这一点。然而,缺少的库 libmpi_cxx.so.0 位于指定文件夹之一中。

谁能给我一个提示我可能做错了什么?

4

1 回答 1

0

检查您的环境变量。如果您的 LIBRARY_PATH、LD_LIBRARY_PATH 或类似的变量不同步或设置为愚蠢的值,您可能不会像搜索动态库那样在相同的目录中搜索静态库。

另请查看 ld.so 手册页

于 2012-03-01T15:43:42.247 回答