I'm running make to install Bowtie on RHEL 6 and I get this error:
g++ -O3 -m64 -DCOMPILER_OPTIONS="\"-O3 -m64 -Wl,--hash-style=both -DPOPCNT_CAPABILITY \"" -Wl,--hash-style=both -DPOPCNT_CAPABILITY \
-fno-strict-aliasing -DBOWTIE_VERSION="\"`cat VERSION`\"" -DBUILD_HOST="\"`hostname`\"" -DBUILD_TIME="\"`date`\"" -DCOMPILER_VERSION="\"`g++ -v 2>&1 | tail -1`\"" -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -DPREFETCH_LOCALITY=2 -DBOWTIE_MM -DBOWTIE_SHARED_MEM -DNDEBUG -Wall \
-I SeqAn-1.1 -I third_party -I third_party \
-o bowtie-build-s ebwt_build.cpp \
ccnt_lut.cpp ref_read.cpp alphabet.cpp shmem.cpp edit.cpp ebwt.cpp tinythread.cpp bowtie_build_main.cpp \
-lpthread
In file included from ebwt_build.cpp:1:
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/iostream:39:28: error: **bits/c++config.h: No such file or directory**
In file included from /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ios:42,
from /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../include/c++/4.4.7/ostream:40,
=============
Running RHEL6 and I installed bowtie with a
git clone https://github.com/BenLangmead/bowtie
I open up the tutorial and execute the following command:
$ ./bowtie e_coli reads/e_coli_1000.fq
And get this error
Traceback (most recent call last):
File "./bowtie", line 70, in <module>
main()
File "./bowtie", line 66, in main
os.execv(bin_spec, arguments)
OSError: [Errno 2] No such file or directory
EDIT: make errored out on RHEL but not Ubuntu.
2 answers
So this works on my Ubuntu machine but not RHEL6
Seems like the problem is the make command errors out on RHEL.
yum install gcc
does not remedy the problem.
If this is a cross-compilation issue (i.e. compiling for 64 bits on a 32-bit platform), it may help to install the multilib libraries mentioned in the link posted by microfuge. More likely is that it's an issue with the older gcc, in which this subcomment of that link may help. The gist of it is this:
cd /usr/include/c++/4.4.7/
mkdir x86_64-redhat-linux
cd x86_64-redhat-linux
ln -s ../i686-redhat-linux 32
If you an get away with a pre-compiled version, I'd suggest installing from bioconda.
After installing conda, it's a simple command to install bowtie:
conda install bowtie
Log in to answer this question.
Here is a stackoverflow search result for the error message http://stackoverflow.com/questions/4643197/missing-include-bits-cconfig-h-when-cross-compiling-64-bit-program-on-32-bit