I am trying to align RNA-seq reads to my reference but I keep getting the error:
[2016-06-04 13:58:45] Beginning TopHat run (v2.0.9) ----------------------------------------------- [2016-06-04 13:58:45] Checking for Bowtie Bowtie 2 not found, checking for older version.. Error: Bowtie not found on this system.
I have a bowtie2 2.2.5 and tophat 2.1.1 installed on my machine, both are located in the same directory, both are added to my $PATH. I can independently run a bowtie2 script to align reads to the reference. The problem only arises when I try to run a tophat script.
Pseudocode for my tophat script: tophat /path/to/bowtie2-2.2.5/indexes/genomeIndexPrefix /path/to/tophat-2.1.1/RNAseqReads.fastq
Any idea what could be going wrong?
What happens if you type
bowtie2
?This is what is printed when I type in "bowtie2" with no other arguments (I edited out some of the stuff in the middle):
Not sure if this explains your error, but I noticed you give the full path for the index, while the manual states:
So you should only give the basename and make sure that Tophat can find it, e.g. with the environmental variable.
I just gave that a shot, but I am still getting the same error. I also ensured that the path to my bowtie2 index directory is in my PATH variable
It should be in the BOWTIE_INDEXES variable. Not PATH.
Ok, just fixed that. Still getting the error though.
Didn't expect that would solve it, the error message is quite specific. Can you elaborate on your "tophat script"? You don't call it simply from the command line?
Sure. I was unclear: I do call it from command line. Read file is located within tophat directory.
I just spotted that in your first post you have this:
That is not the version you describe you downloaded. I suspect you have multiple installations... What do you get if you type
It will tell you in which location the tophat executable is.
Presumably your script is mucking with the PATH somehow. If you execute tophat directly then do you still get an error?
For what it's worth, specifying a direct path to the basename of the index is the normal practice (ignore the mention of environment variables in the tophat manual).
Good to know, saves me the trouble of specifying that environmental variable ^_^