运行mpi报错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运行mpi报错相关的知识,希望对你有一定的参考价值。

(每个节点icc ifort编译器和 mpi都运行正常 a.out也在nfs贡享文件里每个节点都有)

mpirun -np 2 -machinefile ma -limf -lm ./a.out 运行这个之后 报一个错

mpirun: error while loading shared libraries: libimf.so: cannot open shared object file: No such file or directory
求助

这是由于intel compiler的环境没设置好,应该把相应的库文件路径加入 .bashrc

用文本编辑器打开个人主目录下面的.bashrc(~/.bashrc),
加入类似于下面的两行信息(第一行是icc的、第一行是ifort的)并保存:
source /etc/Intel_Compiler/10.0/XXXX/iccvars_intel64.sh
source /etc/Intel_Compiler/10.0/XXXX/ifortvars_intel64.sh

具体绝对路径需要根据你的运行环境中两个文件所在的位置作修改,
另外如果你使用的不是64而是32位程序,那么需要找到相应的.sh文件。
参考技术A 请lz参考http://lammps.sandia.gov/threads/msg20445.html

也许是 libimf库安装异常
参考技术B 应该是驱动的问题

mpi程序运行报错

通过yum直接安装mpi环境之后,发现会报错。具体报错内容如下,始终解决不了。

[[email protected] ~]# mpicc -o test ./test.c 
./test.c: 在函数‘random_A_B’中:

第一个报错源码编译,源码安装可以参考我的博客的mpi环境安装

./test.c:24:11: 警告:忽略声明有 warn_unused_result 属性的‘scanf’的返回值 [-Wunused-result]
            scanf("%f",&m);
                     ^
./test.c:33:13: 警告:忽略声明有 warn_unused_result 属性的‘scanf’的返回值 [-Wunused-result]
                scanf("%f",&m);
                         ^

第二个报错可以通过加上 -lm参数解决

/usr/bin/ld: /tmp/ccUNaZrG.o: undefined reference to symbol ‘[email protected]@GLIBC_2.2.5‘
//usr/lib64/libm.so.6: error adding symbols: DSO missing from command line
collect2: 错误:ld 返回 1

以上是关于运行mpi报错的主要内容,如果未能解决你的问题,请参考以下文章

简单的centos7访问server12r2共享竟然报错报错报错~~~~~~~

Apollo报错

React 引用报错

又报错了

R语言arules报错

vm17报错