LD_LIBRARY_PATH和PBS作业

时间:2013-05-26 11:30:17

标签: openmpi pbs

我正在研究ROMS建模。我刚刚在linux集群上安装了Openmpi。我还相应地调整了LD_LIBRARY_PATH。我现在面临一个独特的问题。

当我从bash shell给出mpirun -np 4 ./oceanG ocean.in时,它运行模型很好。但是,批处理文件中的相同命令无法将./oceanG链接到netcdff5.so。

我收到以下错误消息。

./ oceanG:加载共享库时出错:libnetcdff.so.5:无法打开共享对象文件:没有这样的文件或目录 ./oceanG:加载共享库时出错:libnetcdff.so.5:无法打开共享对象文件:没有这样的文件或目录 ./oceanG:加载共享库时出错:libnetcdff.so.5:无法打开共享对象文件:没有这样的文件或目录 ./oceanG:加载共享库时出错:libnetcdff.so.5:无法打开共享对象文件:没有这样的文件或目录

我的PBS文件如下

#!/bin/bash
#$ -N Upwelling_test
#$-l qname=long_4.q
#$ -cwd
#$ -pe mpich 4
 LD_LIBRARY_PATH=/opt/intel/openmpi/lib:/opt/intel/netcdf4.1.3/lib:/opt/intel/Compiler/11.0/081/lib/intel64:
 /opt/intel/openmpi/bin/mpirun -np 4 ./oceanG  ocean.in

寻找这个奇怪的解决方案

2 个答案:

答案 0 :(得分:0)

您应该尝试在export之前添加LD_LIBRARY_PATH=/opt/intel/...

如果没有export关键字,脚本中设置的变量将不会传递给脚本启动的任何进程。

答案 1 :(得分:0)

我有同样的问题。甚至我把export放在LD_LIBRARY_PATH之前。

export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH

它在交互模型中有效,但是通过提交到集群时出现错误“加载共享库时出错:libnetcdff.so.5:无法打开共享库文件:没有这样的文件或目录”。