【问题标题】:Unable to link ./oceanG to netcdff5.so无法将 ./oceanG 链接到 netcdff5.so
【发布时间】:2013-05-26 11:30:17
【问题描述】:

我正在研究 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

寻找解决这个奇怪问题的方法

【问题讨论】:

    标签: openmpi pbs


    【解决方案1】:

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

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

    【讨论】:

      【解决方案2】:

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

      export LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH
      

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

      【讨论】:

        猜你喜欢
        • 2015-06-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-10
        • 1970-01-01
        • 2013-07-30
        • 1970-01-01
        相关资源
        最近更新 更多