我正在尝试依赖于MCR的matlab脚本。我有包装脚本,在执行实际程序之前为此MCR目录设置环境变量。包装如下。
#!/bin/csh
set thisdir = `pwd`
# --- SET UP ENVIRONMENT VARIABLES ---
echo --- setting up environment variables ---
# presumed location of MATLAB Component Runtime (MCR) v7.14
# if the MCR is in a different location, edit the line below
set mcr_root = /home/foo/MATLAB_Component_Runtime
echo $mcr_root
setenv LD_LIBRARY_PATH $mcr_root/v81/runtime/glnxa64:$LD_LIBRARY_PATH
setenv LD_LIBRARY_PATH $mcr_root/v81/sys/os/glnxa64:$LD_LIBRARY_PATH
setenv LD_LIBRARY_PATH $mcr_root/v81/sys/java/jre/glnxa64/jre/lib/amd64/native_threads:$LD_LIBRARY_PATH
setenv LD_LIBRARY_PATH $mcr_root/v81/sys/java/jre/glnxa64/jre/lib/amd64/server:$LD_LIBRARY_PATH
setenv LD_LIBRARY_PATH $mcr_root/v81/sys/java/jre/glnxa64/jre/lib/amd64:$LD_LIBRARY_PATH
setenv XAPPLRESDIR $mcr_root/v81/X11/app-defaults
# (these may be set permanently by copying the above lines into your login script)
现在当我运行此脚本./run_script
时,我收到此错误 -
LD_LIBRARY_PATH: Undefined variable.
我google了很多,发现了一些相关的问题,但没有一个是有用的。
感谢任何帮助。
答案 0 :(得分:4)
在运行脚本之前,LD_LIBRARY_PATH
可能不存在。脚本中设置LD_LIBRARY_PATH
的第一行尝试追加现有路径 - 但该变量尚未定义。
如果您将脚本中的行更改为
setenv LD_LIBRARY_PATH $mcr_root/v81/runtime/glnxa64
然后它将按预期工作。