ld:成功链接共享库后没有找到执行

问题描述:

我目前正在使用OpenMPI库在Fortran和C/C++混合使用一个简单的数据同步器。该synchonizer编译和链接正确的,据我可以看到:ld:成功链接共享库后没有找到执行

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位于指定文件夹之一中。

任何人都可以给我一个提示,我可以做错了什么?

检查您的环境变量。如果您的LIBRARY_PATH,LD_LIBRARY_PATH或类似的变量已经不同步或设置为无用的值,那么您可能不会像动态一样搜索静态库的相同目录。

另请参阅ld.so手册页