我对Bash脚本很新,我正在尝试设置要使用的环境和库,然后构建一个特定的脚本。这是我写的Bash脚本:
#! /bin/bash
export DISPLAY :0.0
#setenv LD_LIBRARY_PATH /usr/local/szip2.1/lib:${LD_LIBRARY_PATH}
# above line should be equivalent to
export LD_LIBRARY_PATH "/usr/lib64:/usr/lib:$LD_LIBRARY_PATH"
module load Szip/2.1-gmpolf-2015
module load cuda/6.5
#while ( 1 )
cd /home/sbansal6/misr-stereo-2013.11.24
/home/sbansal6/misr-stereo-2013.11.24/bin/misr-stereo /home/sbansal6/ellipsoids/0034007 AN AA
#end
这就是我得到的错误:
[sbansal6@cg-gpu01 STEREO]$ ./mstdrv.csh
./mstdrv.csh: line 3: export: `:0.0': not a valid identifier
./mstdrv.sh: line 6: export: `/usr/lib64:/usr/lib:/sw/cuda/6.5/lib64:/sw/EasyBuild/software/Szip/2.1-gmpolf-2015/lib:/sw/EasyBuild/software/ScaLAPACK/2.0.2-gmpich-2015-OpenBLAS-0.2.14-LAPACK-3.5.0/lib:/sw/EasyBuild/software/FFTW/3.3.4-gmpich-2015/lib:/sw/EasyBuild/software/OpenBLAS/0.2.14-GCC-4.9.2-binutils-2.25-LAPACK-3.5.0/lib:/sw/EasyBuild/software/MPICH/3.1.4-GCC-4.9.2-binutils-2.25/lib:/sw/EasyBuild/software/GCC/4.9.2-binutils-2.25/lib/gcc/x86_64-unknown-linux-gnu/4.9.2:/sw/EasyBuild/software/GCC/4.9.2-binutils-2.25/lib64:/sw/EasyBuild/software/GCC/4.9.2-binutils-2.25/lib:/sw/binutils-2.25/lib': not a valid identifier
/home/sbansa16/misr-stereo-2013.11.24/bin/misr-stereo:error while loading shared libraries: libglut.so.3: cannot open shared object file: No such file or directory
我基本上是在我的环境中尝试从Szip和Cuda添加库,然后构建一个C ++程序,该程序位于我后面编写的路径中。我确实理解我在加载共享库时遇到错误的最后一个错误:libglut.so.3是因为我的库中没有该库。
如果这个问题很简单,我很抱歉。我感谢任何帮助。提前致谢。
更新: 我也尝试过使用csh中的setenv,但它仍然没有用。
答案 0 :(得分:1)
用于设置环境变量的Bash语法为:
export NAME=value
或
NAME=value
export NAME