Hi All,
Like most research students, I happened to be in a need to install BLAT for some work. So, I downloaded the source ZIP (blatSrc35.zip) file from here (http://www.soe.ucsc.edu/~kent/src). Unzipped it and after following the general instructions, started the installation process.
The installation faced several errors and the first one required me to become root:
Error screenshot
which was easily taken care by being root, like follows:
The second error came when the installation enters the blat directory:
It said
make[1]: *** No rule to make target '../lib//jkweb.a', needed by 'blat'. Stop.
So, I searched whether "jkweb.a" was present in the lib directory or not. Indeed, it was absent from the lib directory of the source code. And therefore the compile error was popping up.
From the previous errors, I had come to know the "jkweb.a" was being compiled but somehow it is not available to the next steps. Searching for it using "locate" command, I found it to be created in the root directory itself, i.e., /jkweb.a
Now, I understood why the make command could not find the "jkweb.a" in the lib directory, because, it was somehow thrown to the root directoy "/" rather than in the "lib" directory. And, this is why using "sudo" had solved the first error. Even though I had specified the MACHTYPE to be "x86_64", the compiler was not picking it up. Therefore, when it enters the "lib" directory and "make" encounters following line
it cannot specify $(MACHTYPE) and instead ends up specifying only "/jkweb.a" instead of "x86_64/jkweb.a" to the compiler.
So, naturally making "/jkweb.a" available in the "lib" folder would make the "make" run smoothly. And, indeed it happened so.
Like most research students, I happened to be in a need to install BLAT for some work. So, I downloaded the source ZIP (blatSrc35.zip) file from here (http://www.soe.ucsc.edu/~kent/src). Unzipped it and after following the general instructions, started the installation process.
The installation faced several errors and the first one required me to become root:
Error screenshot
which was easily taken care by being root, like follows:
The second error came when the installation enters the blat directory:
It said
make[1]: *** No rule to make target '../lib//jkweb.a', needed by 'blat'. Stop.
So, I searched whether "jkweb.a" was present in the lib directory or not. Indeed, it was absent from the lib directory of the source code. And therefore the compile error was popping up.
From the previous errors, I had come to know the "jkweb.a" was being compiled but somehow it is not available to the next steps. Searching for it using "locate" command, I found it to be created in the root directory itself, i.e., /jkweb.a
Now, I understood why the make command could not find the "jkweb.a" in the lib directory, because, it was somehow thrown to the root directoy "/" rather than in the "lib" directory. And, this is why using "sudo" had solved the first error. Even though I had specified the MACHTYPE to be "x86_64", the compiler was not picking it up. Therefore, when it enters the "lib" directory and "make" encounters following line
it cannot specify $(MACHTYPE) and instead ends up specifying only "/jkweb.a" instead of "x86_64/jkweb.a" to the compiler.
So, naturally making "/jkweb.a" available in the "lib" folder would make the "make" run smoothly. And, indeed it happened so.
That is all there is to this setup. Enjoy using BLAT.
I hope this would be of help.