How to solve MANTYPE problem in NPACI Rocks 4.2
I have seen the first problem in using NPACI Rocks 4.2. The symptom is I was unable to submit just a basic job to SGE because of following error in standard error file.
MANTYPE: Undefined variable
The job script is as below.
#!/bin/sh
echo Hello
However, it turned out that below job script worked just fine.
#!/bin/sh
#$ -S /bin/sh
echo Hello
Interesting! That's mean there was some problem with csh
since the default shell in SGE is csh
. It seems there is no way to change default shell so I have to fix this problem other way around. And then I found a clue. The problem is somewhere in /etc/profile.d
. So I looked for MANTYPE
in there using grep MANTYPE /etc/profile.d/*
and finally found a problem in java.csh
. The cause is MANTYPE
was referred to without declaration.
So the solution is to declare MANTYPE
prior usage.
diff -u profile.d.orig/bio.csh profile.d/bio.csh
--- profile.d.orig/bio.csh 2006-09-15 11:19:32.000000000 +0700
+++ profile.d/bio.csh 2006-09-15 11:50:39.000000000 +0700
@@ -1,6 +1,10 @@
set path = ( $path /opt/Bio/ncbi/bin /opt/Bio/mpiblast/bin/ /opt/Bio/Emboss/bin /opt/Bio/clustalw/bin /opt/Bio/t_coffee/bin /opt/Bio/phylip/exe /opt/Bio/mrbayes /opt/Bio/fasta /opt/Bio/glimmer/bin /opt/Bio/glimmer/scripts )
-setenv MANPATH ${MANPATH}:/opt/Bio/ncbi/doc/man:/opt/Bio/hmmer/man
+if !( ${?MANPATH} ) then
+ setenv MANPATH /opt/Bio/ncbi/doc/man:/opt/Bio/hmmer/man
+else
+ setenv MANPATH ${MANPATH}:/opt/Bio/ncbi/doc/man:/opt/Bio/hmmer/man
+endif
setenv BLASTDB /share/bio/ncbi/db
setenv BLASTMAT /opt/Bio/ncbi/data
diff -u profile.d.orig/java.csh profile.d/java.csh
--- profile.d.orig/java.csh 2006-09-14 23:01:00.000000000 +0700
+++ profile.d/java.csh 2006-09-15 11:53:01.000000000 +0700
@@ -82,6 +82,11 @@
# java version differs by arch
#
+setenv SGE_ROOT /opt/gridengine
+setenv SGE_ARCH $SGE_ROOT/util/arch
+set DEFAULTMANPATH = $SGE_ROOT/util/arch -m
+set MANTYPE = $SGE_ROOT/util/arch -mt
+
setenv JAVA_HOME /usr/java/jdk1.5.0_07
set path = ( $JAVA_HOME/bin $path)
if ( $?MANPATH == 1 ) then
Common subdirectories: profile.d.orig/RCS and profile.d/RCS
Lastly, you have to distribute bio.csh
and java.csh
to all compute nodes to make SGE work.
- sugree's blog
- 1613 reads
Post new comment