Rscript 是否更改 LD_LIBRARY_PATH?
Does Rscript change LD_LIBRARY_PATH?
我正在 运行ning 一个 R
版本(不是用 intel parallel studio 编译的),我正在尝试加载我自己编译的 intel 编译共享 Fortran
库.在我用于 运行 的脚本中,我包含了 LD_LIBRARY_PATH
,然后使用 Rscript
来 运行 R
脚本(调用 dyn.load("My_Fortran.so")
, 使用 ifort 和 mkl 编译)。
然而,当我 运行 脚本时,它失败并显示 Intel MKL FATAL ERROR: Cannot load libmkl_avx.so or libmkl_def.so
。 Rscript
是否有可能撤消我对 LD_LIBRARY_PATH
的设置?如果不是,是否可能因为这个版本的 R 不是用 intel parallel studio 编译的,所以它无法加载共享库?
我是这样 运行R 脚本并加载路径的:
#!/bin/bash
module load R/3.1.0
LD_LIBRARY_PATH=/path/to/intel_parallel_studio/xe_2015_u3/install/mkl/lib/intel64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
Rscript myRscript.r
R 脚本失败:
Running R code
Attempting to load Fortran compiled shared library ... Done!
Calling Fortran subroutine from within R ...
MKL FATAL ERROR: Cannot load libmkl_avx.so or libmkl_def.so
您可以查看 R
和 Rscript
的 shell 脚本源代码。
一般来说,此类 PATH 设置(用于可执行文件和共享库)通常只会添加到,而不会被覆盖。所以你可能有另一个问题。
你可以编辑 /etc/ld.so.conf
吗?
编辑 还可以考虑在 module load R/3.1.0
.
之前 设置 LD_LIBRARY_PATH
我正在 运行ning 一个 R
版本(不是用 intel parallel studio 编译的),我正在尝试加载我自己编译的 intel 编译共享 Fortran
库.在我用于 运行 的脚本中,我包含了 LD_LIBRARY_PATH
,然后使用 Rscript
来 运行 R
脚本(调用 dyn.load("My_Fortran.so")
, 使用 ifort 和 mkl 编译)。
然而,当我 运行 脚本时,它失败并显示 Intel MKL FATAL ERROR: Cannot load libmkl_avx.so or libmkl_def.so
。 Rscript
是否有可能撤消我对 LD_LIBRARY_PATH
的设置?如果不是,是否可能因为这个版本的 R 不是用 intel parallel studio 编译的,所以它无法加载共享库?
我是这样 运行R 脚本并加载路径的:
#!/bin/bash
module load R/3.1.0
LD_LIBRARY_PATH=/path/to/intel_parallel_studio/xe_2015_u3/install/mkl/lib/intel64:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
Rscript myRscript.r
R 脚本失败:
Running R code
Attempting to load Fortran compiled shared library ... Done!
Calling Fortran subroutine from within R ...
MKL FATAL ERROR: Cannot load libmkl_avx.so or libmkl_def.so
您可以查看 R
和 Rscript
的 shell 脚本源代码。
一般来说,此类 PATH 设置(用于可执行文件和共享库)通常只会添加到,而不会被覆盖。所以你可能有另一个问题。
你可以编辑 /etc/ld.so.conf
吗?
编辑 还可以考虑在 module load R/3.1.0
.
LD_LIBRARY_PATH