LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Newbie (https://www.linuxquestions.org/questions/linux-newbie-8/)
-   -   "getAbsPath"? Attempting to run Birdsuite (https://www.linuxquestions.org/questions/linux-newbie-8/getabspath-attempting-to-run-birdsuite-833691/)

zeratul111 09-22-2010 12:25 AM

"getAbsPath"? Attempting to run Birdsuite
 
Hi again,

This forum was very helpful in answering my previous question about scripting, so I'm going to try again with another problem that I have been having for a couple weeks now (the software support have not replied to my questions, unfortunately).

In brief: I am trying to run Birdsuite (64-bit version: http://www.broadinstitute.org/scienc...dsuite-install). I followed the installation instructions exactly and attempted to run the test code at the bottom of the installation web page.

The commands I used are the following:
Code:

/home2/jason/EXEDIR/birdsuite.sh --basename=test --exeDir=/home2/jason/EXEDIR/ --metadataDir=/home2/jason/EXEDIR/METADATADIR/ --chipType=GenomeWideSNP_6 --genderFile=/home2/jason/EXEDIR/TESTDIR/test.gender --celFiles=/home2/jason/EXEDIR/TESTDIR/test.cels --noLsf --apt_probeset_summarize.force --outputDir=/home2/jason/EXEDIR/TESTDIR/TEST_OUT/
--------------------------------
More information about the invocation commands/options here:
http://www.broadinstitute.org/scienc...ite/invocation

--------------------------------

Unfortunately, when attempting to run the above, I get this error in the log:
Quote:

+ unset DISPLAY
+ export MCR_INHIBIT_CTF_LOCK=1
+ MCR_INHIBIT_CTF_LOCK=1
++ /home2/jason/EXEDIR/getAbsPath /home2/jason/EXEDIR
/home2/jason/EXEDIR/birdsuite.sh: line 40: /home2/jason/EXEDIR/getAbsPath: No such file or directory
+ exedir=

Here's the code to "birdsuite.sh", the relevant "line 40" from the error is bolded:
Code:

#! /bin/bash
# The Broad Institute
# SOFTWARE COPYRIGHT NOTICE AGREEMENT
# This software and its documentation are copyright 2007 by the
# Broad Institute/Massachusetts Institute of Technology. All rights are
# reserved.

# This software is supplied without any warranty or guaranteed support
# whatsoever. Neither the Broad Institute nor MIT can be responsible for its
# use, misuse, or functionality.

set -e

# If --exeDir has been passed on the command line, it must be detected so that
# R_LIBS can be set correctly, in addition to passing --exeDir along to Birdsuite.jar.
# If --exeDir has not been passed on the command line, then by default the
# executables are found in the same directory as birdsuite.sh itself.

exedir=`dirname $0`
exedir_implicit=1

# This mess of punctuation iterates downward, because
# the command-line args go into BASH_ARGV backward.
# If --exeDir is the last argument on the command line, it is
# not detected here, but will cause Birdsuite.jar to fail.
for (( i=((${#BASH_ARGV[@]}-1)) ; i > 0 ; --i ))
do  if [[ ${BASH_ARGV[$i]} == --exeDir ]]
    then exedir=${BASH_ARGV[(($i-1))]}
        exedir_implicit=''
    fi
done

set -x

unset DISPLAY
export MCR_INHIBIT_CTF_LOCK=1
#experimental change for when python is packaged.
#PYTHONPATH=$PYTHONPATH:$exedir
#export PYTHONPATH
exedir=`${exedir}/getAbsPath ${exedir}`

# So that R can pick up broadgap packages
export R_LIBS=$exedir:$R_LIBS

if [ -n "$exedir_implicit" ]
then exedir_args="--exeDir=$exedir"
fi

java -jar $exedir/Birdsuite.jar $exedir_args $*


What exactly is this "getAbsPath" file or directory from the above code? Is it a necessary component? How would I tweak the shell script to get this working?

I am very confused. Sorry for asking these stupid questions. Thank you very much for your help!

grail 09-22-2010 12:37 AM

According to the code you should have an executable in your exedir called getAbsPath.
Quote:

Is it a necessary component?
You probably need to read up more about the application as it depends on what the output of this command is as it affects the rest
of the script where it refers to $exedir

zeratul111 09-22-2010 01:11 AM

Quote:

Originally Posted by grail (Post 4105338)
According to the code you should have an executable in your exedir called getAbsPath.

You probably need to read up more about the application as it depends on what the output of this command is as it affects the rest
of the script where it refers to $exedir

Thank you grail. Now I realize that I needed to obtain getAbsPath elsewhere. Unfortunately, I hit another roadblock. :(

Quote:

+ unset DISPLAY
+ export MCR_INHIBIT_CTF_LOCK=1
+ MCR_INHIBIT_CTF_LOCK=1
++ /home2/jason/EXEDIR/getAbsPath/getAbsPath /home2/jason/EXEDIR
+ exedir=/home2/jason/EXEDIR
+ export R_LIBS=/home2/jason/EXEDIR:
+ R_LIBS=/home2/jason/EXEDIR:
+ '[' -n 1 ']'
+ exedir_args=--exeDir=/home2/jason/EXEDIR
+ java -jar /home2/jason/EXEDIR/Birdsuite.jar --exeDir=/home2/jason/EXEDIR --basename=test --exeDir=/home2/jason/EXEDIR/ --metadataDir=/home2/jason/EXEDIR/METADATADIR/ --chipType=GenomeWideSNP_6 --genderFile=/home2/jason/EXEDIR/TESTDIR/test.gender --celFiles=/home2/jason/EXEDIR/TESTDIR/test.cels --noLsf --apt_probeset_summarize.force --outputDir=/home2/jason/EXEDIR/TESTDIR/TEST_OUT/
Exception in thread "main" java.lang.ClassFormatError: edu.mit.broad.espcore.apps.affy.BirdSuite (unrecognized class file version)
at java.lang.VMClassLoader.defineClass(libgcj.so.7rh)
at java.lang.ClassLoader.defineClass(libgcj.so.7rh)
at java.security.SecureClassLoader.defineClass(libgcj.so.7rh)
at java.net.URLClassLoader.findClass(libgcj.so.7rh)
at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
at java.lang.ClassLoader.loadClass(libgcj.so.7rh)
at gnu.java.lang.MainThread.run(libgcj.so.7rh)
~
I googled this error and it seems like an issue with the version of java installed on the server. I will google some more.

grail 09-22-2010 02:14 AM

I would think where you are getting the birdsuite software from should tell you which version of java you require and any other associated files / apps.

chariko 09-30-2010 09:48 AM

Quote:

Originally Posted by zeratul111 (Post 4105365)
Thank you grail. Now I realize that I needed to obtain getAbsPath elsewhere. Unfortunately, I hit another roadblock. :(



I googled this error and it seems like an issue with the version of java installed on the server. I will google some more.

Hi zeratul111,

I am also stuck at the same step as you. Did you manage to get "getAbspath" somewhere? If so, could you please tell me where? or could you send it to me?

Thanks in advance

zeratul111 10-01-2010 12:09 AM

Hi chariko,

You can download getAbsPath here: http://sourceforge.net/projects/getabspath/
Extract and compile to your EXEDIR folder.

Interestingly, when I reinstalled Birdsuite, getAbsPath was present. Not sure what I did incorrectly the first time around.

Unfortunately, I'm running into a bunch of other errors that I'm slowly solving one by one... if you run into issues, please feel free to post here/pm me, hopefully we can help each other out. :)

Thanks.


All times are GMT -5. The time now is 04:50 AM.