Showing posts with label Application. Show all posts
Showing posts with label Application. Show all posts

Monday, May 27, 2013

rpm packages for latex2html

If you are not using yum which you should be but relying on good old rpm to unpack the package for whatever reasons, if you wish to install latex2html you may wish to take note of the dependency packages. Quite a bit eh? Most of the packages can be found in the original CD install of the RH or CentOS CD

latex2html-2008-4.el6.noarch.rpm 
texlive-texmf-dvips-2007-38.el6.noarch.rpm
netpbm-10.47.05-11.el6.i686.rpm 
texlive-texmf-errata-2007-7.1.el6.noarch.rpm
netpbm-10.47.05-11.el6.x86_64.rpm 
texlive-texmf-errata-dvips-2007-7.1.el6.noarch.rpm
netpbm-progs-10.47.05-11.el6.x86_64.rpm 
texlive-texmf-errata-fonts-2007-7.1.el6.noarch.rpm
psutils-1.17-34.el6.x86_64.rpm 
texlive-texmf-errata-latex-2007-7.1.el6.noarch.rpm
texlive-2007-57.el6_2.x86_64.rpm 
texlive-texmf-fonts-2007-38.el6.noarch.rpm
texlive-dvips-2007-57.el6_2.x86_64.rpm 
texlive-texmf-latex-2007-38.el6.noarch.rpm
texlive-latex-2007-57.el6_2.x86_64.rpm 
texlive-utils-2007-57.el6_2.x86_64.rpm
texlive-texmf-2007-38.el6.noarch.rpm

Sunday, May 12, 2013

Compiling SamTools

Taken from Cufflinks – Getting Started

For more information, see Compiling SamTools


SAM (Sequence Alignment/Map) format is a generic format for storing large nucleotide sequence alignments. SAM Tools provide various utilities for manipulating alignments in the SAM format, including sorting, merging, indexing and generating alignments in a per-position format.

SAMTools (0.1.19)
Step 1: – Download SAMTools

Step 2: – Unpack and compile the SAMTools
# tar -zxvf samtools-0.1.19
# make

Step 3: – Copy the compiled libraries to /usr/local/lib
# cp $SAMTOOLS_HOME/libbam.a /usr/local/lib

Step 4: Copy headers to /usr/local/include
# mkdir /usr/local/include/bam
# cp $SAMTOOLS_HOME/*.h /usr/local/include/bam

Friday, May 10, 2013

Compiling and Installing Boost 1.53

Referenced from Cufflinks – Get started.



Step 1 – Download Boost from Boost Website

Step 2 – Unpack the boost
# tar -zxvf boost_1_53_0.tar.gz

Step 3 – Run Bootstrap.sh
# ./bootstrap.sh
Building Boost.Build engine with toolset gcc...
.....

Step 4 – Run the binary b2
# ./b2 install --prefix=/usr/local/boost
It will take a while……

Step 5: Test that the compilation is working.
Compile the test case.
# cd $BOOST_ROOT/boost_1_53_0/tools/build/v2/example/hello

# $BOOST_ROOT/b2
You should see a binary file “hello” at
# $BOOST_ROOT/boost_1_53_0/tools/build/v2/example/hello/bin/gcc-4.4.6/debug

For more information, see Compiling and Installing Boost 1.53

Thursday, April 25, 2013

Unable to detect bamlib libraries (version or higher) when installing cufflinks

If you are installing Cufflinks according to the instructions as given by http://cufflinks.cbcb.umd.edu/tutorial.html. 

The compiling of the components below are quite expected.
boost,
eigen,
samtools

But when finally compiling cufflinks, you might encounter errors
.....
..... 
checking for bamlib... configure: error: We could not detect the bam libraries 
(version    or higher). If you have a staged bam library (still not installed) 
please specify $BAM_ROOT in your environment and do not give a PATH to --with-bam option.  
If you are sure you have bam installed, then check your version number looking in......... 
See http://randspringer.de/bam for more documentation. 
The source of the error is somehow the cufflinks is not able to find the libraires and binaries found by samtools. This is especially true if you compiled the components into distinct directories and not into standard directories like /usr/local/bin and /usr/local/lib /usr/local/include

To ensure that the cufflinks detects the samtools libraries, you might want to do the following.
# mkdir -p /usr/local/include/bam
# cp ${SAMTOOLS}/libbam.a /usr/local/lib/
# cp ${SAMTOOLS}/*.h /usr/local/include/bam
# cp ${SAMTOOLS}/samtools /usr/local/bin/

Try compiling again. It should work

Friday, November 23, 2012

Compiling and Installing Boost C++ Libraries on CentOS

Boost C++ libraries provides free peer-reviewed portable C++ source libraries. Boost libraries are intended to be widely useful, and usable across a broad spectrum of applications.

Easy Build and Install (Taken from Getting Started on Unix Variants)

$ cd path/to/boost_1_52_0
$ ./bootstrap.sh --help

Select your configuration options and invoke ./bootstrap.sh again without the --help option. Unless you have write permission in your system's /usr/local/ directory, you'll probably want to at least use
$ ./bootstrap.sh --prefix=/usr/local/boost
$ ./b2 install
This will leave Boost binaries in the lib/ subdirectory of your installation prefix. You will also find a copy of the Boost headers in the include/ subdirectory of the installation prefix, so you can henceforth use that directory as an #include path in place of the Boost root directory.

Thursday, November 22, 2012

JELLYFISH - Fast, Parallel k-mer Counting for DNA


What is Jellyfish - Fast, Parallel k-mer Counting for DNA?
(Taken from Jellyfish Site)
JELLYFISH is a tool for fast, memory-efficient counting of k-mers in DNA. A k-mer is a substring of length k, and counting the occurrences of all such substrings is a central step in many analyses of DNA sequence. JELLYFISH can count k-mers using an order of magnitude less memory and an order of magnitude faster than other k-mer counting packages by using an efficient encoding of a hash table and by exploiting the "compare-and-swap" CPU instruction to increase parallelism.

JELLYFISH is a command-line program that reads FASTA and multi-FASTA files containing DNA sequences. It outputs its k-mer counts in an binary format, which can be translated into a human-readable text format using the "jellyfish dump" command. See the documentation below for more details.



Requirements:

JELLYFISH runs on 64-bit Intel-compatible processors running Linux or FreeBSD (including Intel Macs). It requires GNU GCC to compile.


Download (current version 1.1.6.):
http://www.cbcb.umd.edu/software/jellyfish/jellyfish-1.1.6.tar.gz


Installation:
# ./configure --prefix=/usr/local/jellyfish
# make
# make install

Testing- Test 1
# make check

... 
...
====================
All 19 tests passed
(1 test was not run)
====================
...
...
All tests should pass and 1 test should be skipped (big.sh). Running
'make check' will use about 50MB of disk space and will use every CPUs
found on the machine. On our test machine with 32 cores, it takes a
few minutes to run.

Testing -Test 2
# make check BIG=1

....
....
PASS: tests/generate_sequence.sh
PASS: tests/serial_hashing.sh
PASS: tests/parallel_hashing.sh
PASS: tests/serial_direct_indexing.sh
PASS: tests/parallel_direct_indexing.sh
....
....

Wednesday, November 21, 2012

Basic Installation of Quake - Package to correct substitution sequencing errors in experiments with deep coverage

What is Quake?
(Taken from Quake Site)

Quake is a package to correct substitution sequencing errors in experiments with deep coverage (e.g. >15X), specifically intended for Illumina sequencing reads. Quake adopts the k-mer error correction framework, first introduced by the EULER genome assembly package. Unlike EULER and similar progams, Quake utilizes a robust mixture model of erroneous and genuine k-mer distributions to determine where errors are located. Then Quake uses read quality values and learns the nucleotide to nucleotide error rates to determine what types of errors are most likely. This leads to more corrections and greater accuracy, especially with respect to avoiding mis-corrections, which create false sequence unsimilar to anything in the original genome sequence from which the read was taken.

Setting up is quite straight-forward, just untar in an appropriate directory.
# tar -zxvf quake-0.3.4.tar.gz
# cd Quake\src

Edit the Makefile if you are using Linux (Link CFLAGS to Boost Directory). Boot Software can be downloaded at Boost C++ Libraries
CC=g++
CFLAGS=-O3 -fopenmp -I/usr/local/boost/include/boost -I.
LDFLAGS=-L. -lgzstream -lz
.....
.....

To complete the installation, do a make at the src
 # make

You should see executable in the src

Monday, August 27, 2012

Installing and compiling LimitCPU


LimitCPU is a program to throttle the CPU cycles used by other applications. LimitCPU will monitor a process and make sure its CPU usage stays at or below a given percentage......

Compiling and Installing is not difficult. Do look at the README
# cd cpulimit-1.7
# make
# make install


To remove the installation, do
# make deinstall


Common Usage
With Reference to LimitCPU README

1. For  example, if you wish to cap the cpu usage to 50% for processor 12345
# cpulimit -p 12345 -l 50

2. If you wish to run LimitCPU in the background
# cpulimit -p 12345 -l 50 -b

3. If you wish to limit running processes based on their name instead of their process ID. The below example will keep an eye on "bigexe" and, if the application quits and another program called "bigexe" is run, LimitCPU will monitor the new process too. Pretty cool eh
# cpulimit --exe /usr/bin/bigexe --limit 50

4. If you wish to only track the first program and then exit
# cpulimit --exec /usr/bin/bigexe --limit 50 -z

Wednesday, January 18, 2012

Installing Adobe Flash Plugin on CentOS 5 and 6

Step 1: Install Yum Repository from Adobe

(i) For i386
# rpm -ivh http://linuxdownload.adobe.com
/adobe-release/adobe-release-i386-1.0-1.noarch.rpm

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux


(ii) For x86-64
# rpm -ivh http://linuxdownload.adobe.com/
adobe-release/adobe-release-x86_64-1.0-1.noarch.rpm

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux

Step 2: Update the repositories
# yum update

Step 3: Installing Adobe Player -

CentOS 5
#  yum install flash-plugin nspluginwrapper curl

CentOS 6
# yum install flash-plugin nspluginwrapper alsa-plugins-pulseaudio libcurl



Tuesday, November 29, 2011

Installing Pylith using Pylith Installer


PyLith is a finite element code for the solution of dynamic and quasi-static tectonic deformation problems.

This entry will only focus on the compilation of Pylith from the installer. Most if not all of the information comes from INSTALLER files after you untar the software.

For more information, see Installing Pylith using Pylith Installer



Saturday, November 12, 2011

Compiling adaptive Poisson-Boltzmann Solver (APBS) on CentOS 5


Adaptive Poisson-Boltzmann Solver (APBS) is a software package for modeling biomolecular solvation through solution of the Poisson-Boltzmann equation (PBE), one of the most popular continuum models for describing electrostatic interactions between molecular solutes in salty, aqueous media......

Installation is very simple. There are many binaries there and you can use the binaries directly. Do note that the latest binaries (apbs-1.3) uses will require glibc 2.7 and greater. If you are using CentOS 5, you may want to use apbs-1.21 binaries or below.

For details on Compiling adaptive Poisson-Boltzmann Solver (APBS) on CentOS 5 on Linux Cluster

Tuesday, November 1, 2011

Installing ALPS 2.0 from source on CentOS 5

What is ALPS Project?

The ALPS project (Algorithms and Libraries for Physics Simulations) is an open source effort aiming at providing high-end simulation codes for strongly correlated quantum mechanical systems as well as C++ libraries for simplifying the development of such code. ALPS strives to increase software reuse in the physics community. Good information on installing ALPS can be found on ALPS Wiki's Download and install ALPS for Ubuntu 9.10, Ubuntu 10.04, Ubuntu 10.10, Debian and MacOS

Installing ALPS with Boost

# wget http://alps.comp-phys.org/static/software/releases/alps-2.0.2-r5790-src-with-boost.tar.gz
You will need either gfortran or Intel Fortran Compiler. If you are installing using gfortan
# yum install gcc-c++ gcc-gfortran
If you want to use the evaluation tools, you will need to install a newer version of Python than the provided 2.4. You can install from source or use an unofficial repository for binary RPMs. This is not required if you just want to run your compiled simulations (c++ applications), but make sure you still have python headers (specify -DALPS_BUILD_PYTHON=OFF when invoking cmake):
# yum install python-devel
BLAS/LAPACK is necessary. Make sure you have EPEL repository ready. For more information,Red Hat Enterprise Linux / CentOS Linux Enable EPEL (Extra Packages for Enterprise Linux) Repository
# yum install blas-devel lapack-devel
CMake 2.8.0 and HDF5 1.8 need to be installed. There is a wonderful scripts that comes with ALPS that help to compile CMAKE 2.8 and HDF5.1.8 with CentOS 5
$ $HOME/src/alps2/script/cmake.sh $HOME/opt $HOME/tmp
$ $HOME/src/alps2/script/hdf5.sh $HOME/opt $HOME/tmp

Build ALPS

Create a build directory (anywhere you have write access) and execute cmake giving the path to the alps and to the boost directory:
# cmake -D Boost_ROOT_DIR:PATH=/path/to/boost/directory /path/to/alps/directory
For example if the alps precompiled directory is in /root/alps-2.0.2 # cmake -D Boost_ROOT_DIR:PATH=/root/alps-2.0.2/boost /root/alps-2.0.2/alps To install in another directory, set set the variable CMAKE_INSTALL_PREFIX
# cmake -DCMAKE_INSTALL_PREFIX=/path/to/install/directory /path/to/alps/directory
For example:
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/alps-2.0.2 /root/alps-2.0.2/alps

Build and test ALPS

$ make -j 8
$ make test
$ make install
* HDF5.1.8 binaries and libraries are very useful not only for compiling ALPS but other applications require HDF5.1.8. You may want to consider to move its binaries and libraries to the /usr/local/ directories

Wednesday, April 6, 2011

Compiling ScaLAPACK

ScaLAPACK is a library of high-performance linear algebra routines for distributed-memory message-passing MIMD computers and networks of workstations supporting PVM [68] and/or MPI [64, 110]
There are 2 ways you can compile ScaLAPACK, you can download scalapack.tgz and manually compile. Do look at the excellent article ScaLAPACK, LAPACK, BLACS and ATLAS on OpenMPI Linux installation tutorial

One challenges you might face is that if scaLAPACK dependencies are compiled with different Fortran compilers, you will face quite a challenge to complete the compilation.

Alternatively you can use the scalapack installer from http://www.netlib.org/scalapack/. 
Do look at the README to see the flags you will need.

Thursday, March 31, 2011

/usr/bin/ld cannot find -lf2c for CentOS 5

If you encounter this error "/usr/bin/ld: cannot find -lf2c", you are obviously missing f2c package. Do download the f2c-20031026-3.0.1.el5.x86_64.rpm package found at  f2c-20031026-3.0.1.el5.x86_64.rpm - CentOS 5 (RHEL 5) - ATrpms

# wget http://dl.atrpms.net/el5-x86_64/atrpms/stable/f2c-20031026-3.0.1.el5.x86_64.rpm
# rpm -Uvh f2c-20031026-3.0.1.el5.x86_64.rpm
# ldconfig

Wednesday, March 30, 2011

Compiling MPI BLACS on CentOS 5

An interesting article from Linux Cluster on Compiling MPI BLACS on CentOS 5. BLACS is compiled with OpenMPI 1.4.x with g77 and gfortran.

For more information see Compiling BLACS on CentOS 5

Compiling LAPACK on CentOS 5

Download the lapack latest stable version (lapack-3.3.0.tgz) from http://www.netlib.org/lapack/
# cd /root
# tar -xzvf lapack-3.3.0.tgz
# cd /root/lapack-3.3.0
# cp make.inc.example make.inc
Assuming Edit make.inc. Assuming the Compiling ATLAS on CentOS 5
#BLASLIB = ../../blas$(PLAT).a
BLASLIB = /usr/local/atlas/lib/libf77blas.a /usr/local/atlas/lib/libatlas.a
Compile lapack package
# make
Copy the libraries to
# mkdir /usr/local/lapack/lib
# cp /root/lapack-3.3.0/*.a /usr/local/lapack/lib
# cd /usr/local/lapack/lib/
# chmod 555 *.a
Other related Information
  1. Compiling ATLAS on CentOS 5

Tuesday, March 29, 2011

Compiling ATLAS on CentOS 5

This tutorial is to help you compile ATLAS (Automatically Tuned Linear Algebra Software) with gFortran. For those who are using Intel Compiler, you have the reliable Intel MKL (Math Kernel Library)

First thing first, some comparison between ATLAS and MKL.

ATLAS
ATLAS The Automatically Tuned Linear Algebra Software (ATLAS) provides a complete implementation of the BLAS API 3 and a subset of LAPACK 3. A big number of instructions-set specific optimizations are used throughout the library to achieve peak-performance on a wide variety of HW-platforms.

ATLAS provides both C and Fortran interfaces.

ATLAS is available for all HW-platforms capable of running UNIX or UNIX-like operating systems as well as Windows (tm).
MKL
Intel's Math Kernel Library (MKL) implements a set of linear algebra, fast Fourier transforms and vector math functions. It includes LAPACK 3, BLAS 3 and extended BLAS and provides both C and Fortran interfaces.

MKL is available for Windows (tm) and Linux (x86/i686 and above) only.
Download the latest stable package from ATLAS (http://sourceforge.net/projects/math-atlas/files/Stable/). The current stable version is atlas3.8.0.tar.gz. Do note that ATLAS don't like configuration on its original location, hence the need to create ATLAS_BUILD directory.
# cd /root
# tar -xzvf atlas3.8.3.tar.gz
# mkdir /root/ATLAS_BUILD
# cd /root/ATLAS_BUILD
# /root/ATLAS/configure
You will need to turn off CPU Throttling. For CentOS and Fedora, you will use
# /usr/bin/cpufreq-selector -g performance
For more information, you can see my blog entry Switching off CPU Throttling on CentOS or Fedora

Compile ATLAS
make
make check
make ptcheck
make time
make install
By default, ATLAS installed to /usr/local/atlas

Finally remember to add /usr/local/atlas/lib to your LD_LIBRARY_PATH

Wednesday, March 23, 2011

Installing Gromacs 4.0.x on CentOS 5.x


GROMACS is a versatile package to perform molecular dynamics, i.e. simulate the Newtonian equations of motion for systems with hundreds to millions of particles.

 
It is primarily designed for biochemical molecules like proteins, lipids and nucleic acids that have a lot of complicated bonded interactions, but since GROMACS is extremely fast at calculating the nonbonded interactions (that usually dominate simulations) many groups are also using it for research on non-biological systems, e.g. polymers

Do note that this Gromacs Installation Guide is for Gromacs 4.0.x. For detailed instruction, see GROMACS Installation Instructions. For installation of FFTW, you may want to take a look at Blogh Entry Installing FFTW

Since I'm using FFTWMPI (OpenMPI to be exact) and configure FFTW with --prefix=/usr/local/fftw,

I've configured the following

# ./configure CPPFLAGS="-I/usr/local/fftw/include" LDFLAGS="-L/usr/local/fftw/lib" \ 
--with-fft=fftw3 --enable-mpi --disable-float
Some notes...... (Assuming you are using bash)


  1. CPPFLAGS="-I/usr/local/fftw/include"
  2. LDFLAGS="-L/usr/local/fftw/lib"
  3. To compile with FFTW version 3 "--with-fft=fftw3"
  4. To enable MPI "--enable-mpi"
  5. To select Double precision  "--disable-float"
# make -j 8
where 8 is the number of cores.

# make mdrun
* if you have configure with "--enable-mpi"
# make install
* Install all the binaries, libraries and shared data files with:
# make install-mdrun
* If you only want to build the mdrun executable (in the case of an MPI build),

# make links
* If you want to create links in /usr/local/bin to the installed GROMACS executables

Monday, March 21, 2011

Resolving "specifies multiple packages" error when removing a package

You may be using the good old rpm -e to remove a package, you may encounter an error, in my case "blas specified multiple packages". Naturally rpm will not allow you to remove the package.

# rpm -e --nodeps --allmatches (package)