加载共享库时出错:libicuuc.so.50
error while loading shared libraries: libicuuc.so.50
我尝试在 CentOS 7 中向 SLURM 提交 R 脚本,如下所示:
#!/bin/bash
#SBATCH -J test
#SBATCH -o test.out
#SBATCH -p compute
#SBATCH --qos=normal
#SBATCH -N 1
#SBATCH --ntasks-per-node=8
#SBATCH --cpus-per-task=1
#SBATCH --job-name=rtest
Rscript --vanilla Rhelp.R
然后系统会return一个jobid,但是R脚本不起作用。我可以保证这个脚本可以在命令行中 运行 。然后我在test.out里找到了,像这样:
error while loading shared libraries: libicuuc.so.50:
cannot open shared object file: No such file or directory
我是 SLURM 的新生,Linux,谢谢!
看起来 libicu
RPM 包没有安装在计算节点上。
仅仅因为它可能安装在头节点上并不意味着它安装在计算节点上。您可以在 Slurm 作业中启动相同的 ldconfig 命令并查看结果以确认情况是否如此。
使用来自头节点的 module avail
命令,您可以列出所有可用模块,并且 loaded 模块会根据您的 OS 以某种方式进行标记;对我来说,它们标有 (L)。您需要做的就是从您的文件脚本中加载那些已加载的模块,每个模块都使用以下行调用
module load path_to_module
。然而,path_to_module
与前面的命令 module avail
所指示的一样。
或者不求助于 module avail
,您可以对当前加载的模块使用 module list
。
我尝试在 CentOS 7 中向 SLURM 提交 R 脚本,如下所示:
#!/bin/bash
#SBATCH -J test
#SBATCH -o test.out
#SBATCH -p compute
#SBATCH --qos=normal
#SBATCH -N 1
#SBATCH --ntasks-per-node=8
#SBATCH --cpus-per-task=1
#SBATCH --job-name=rtest
Rscript --vanilla Rhelp.R
然后系统会return一个jobid,但是R脚本不起作用。我可以保证这个脚本可以在命令行中 运行 。然后我在test.out里找到了,像这样:
error while loading shared libraries: libicuuc.so.50:
cannot open shared object file: No such file or directory
我是 SLURM 的新生,Linux,谢谢!
看起来 libicu
RPM 包没有安装在计算节点上。
仅仅因为它可能安装在头节点上并不意味着它安装在计算节点上。您可以在 Slurm 作业中启动相同的 ldconfig 命令并查看结果以确认情况是否如此。
使用来自头节点的 module avail
命令,您可以列出所有可用模块,并且 loaded 模块会根据您的 OS 以某种方式进行标记;对我来说,它们标有 (L)。您需要做的就是从您的文件脚本中加载那些已加载的模块,每个模块都使用以下行调用
module load path_to_module
。然而,path_to_module
与前面的命令 module avail
所指示的一样。
或者不求助于 module avail
,您可以对当前加载的模块使用 module list
。