Skip to content

Download and Install

Dadi edited this page Jul 24, 2020 · 3 revisions

Minimal System Requirements

OS

  • Linux distro (Compatibility on MacOS is NOT guaranteed. Windows is NOT supported)
  • GLIBC >= 2.14
  • GCC >= 4.9.0

Dependencies

  • Perl >= 5.0
  • STAR >= 2.4.0h
  • Samtools >= 1.4
  • Bedtools >= 2.20

Download (Releases)

wget https://github.com/williamritchie/IRFinder/archive/v1.3.0.tar.gz
tar -zxvf v1.3.0.tar.gz

Installation

On most machines, IRFinder can run out of box. You only need to give execution permissions to IRFinder scripts and you're ready to go.

chmod -R a+x IRFinder-1.3.0/bin

Compilation [optional]

A new compilation of IRFinder core binary can be done using the source code coming with IRFinder package. This ensures the compatibility of IRFinder and users' system environment. The source code locates at src/irfinder folder inside the IRFinder package. To build from source, a GCC version at least 4.9.0 with a GLIBC version at least 2.14 is required. The entire installation process is as simple as the following:

cd src/irfinder
make clean
make
cp irfinder ../../bin/util

The above steps will compile a new binary irfinder and replace the original one coming with the package.
IRFinder is ready to go if everything returns no error. Common failure during compiling and their work around are provided below:

Error 1

ReadBlockProcessor_CoverageBlocks.cpp:234:9: error: ‘NAN’ was not declared in this scope

Solution:
Please add a new line of

#include <cmath>

at the beginning of includedefine.h file. This forces the script to load cmath library where the value of NAN is defined. Then try to compile IRFinder again by

make clean
make
cp irfinder ../../bin/util

Error 2

/usr/bin/ld: cannot find -lm

Solution:
It suggests the compiler cannot find the math library.
If you're using RHEL 6.x distros, you can check if libm.a or libm.so is inside /usr/lib/x86_64-redhat-linux5E/lib64/ folder. If so, please open Makefile and change the line of

LDFLAGS_static := -static -static-libgcc

to

LDFLAGS_static := -static -static-libgcc -L/usr/lib/x86_64-redhat-linux5E/lib64/

For other distros, please first use

sudo find / -type f -iname "libm.*"

to locate your math library. For example, if your libm.* is located inside the /usr/lib/XXX folder, please open Makefile and change the line of

LDFLAGS_static := -static -static-libgcc

to

LDFLAGS_static := -static -static-libgcc -L/usr/lib/XXX

Then you should be able to compile IRFinder by

make clean
make
cp irfinder ../../bin/util

Error 3

clang: error: unsupported option '-fopenmp'

Solution:
This is more likely to happen on MacOS. Unfortunately, we don't have much experience on MacOS. The suggestion would be to use a suitable GCC compiler instead of clang (make sure GCC is used to compile instead of Clang after installing GCC).