Compiling Quantum ESPRESSO-6.5.0 with Intel MPI 2018 on CentOS 7

Step 1: Download Quantum ESPRESSO 6.5.0 from Quantum ESPRESSO Download Site or git-clone QE

% git clone https://gitlab.com/QEF/q-e.git

Step 2: Remember to source the Intel Compilers and indicate MKLROOT in your .bashrc

source /usr/local/intel/2018u3/mkl/bin/mklvars.sh intel64
source /usr/local/intel/2018u3/parallel_studio_xe_2018/bin/psxevars.sh intel64
source /usr/local/intel/2018u3/compilers_and_libraries/linux/bin/compilervars.sh intel64
source /usr/local/intel/2018u3/impi/2018.3.222/bin64/mpivars.sh intel64

Step 3: Make a file call setup.sh and copy the contents inside.

export F90=mpiifort
export F77=mpiifort
export MPIF90=mpiifort
export CC=mpiicc
export CPP="icc -E"
export CFLAGS=$FCFLAGS
export AR=xiar
export BLAS_LIBS=""
export LAPACK_LIBS="-lmkl_blacs_intelmpi_lp64"
export SCALAPACK_LIBS="-lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64"
export FFT_LIBS="-L$MKLROOT/intel64"
./configure --enable-parallel --enable-openmp --enable-shared --with-scalapack=intel --prefix=/usr/local/espresso-6.5.0
% ./setup.sh
% make all -j 16 
% make install

Checking of availabilities of Libraries

% ./configure --prefix=/usr/local/espresso-6.5.0 --enable-parallel --enable-openmp --enable-shared --with-scalapack=intel | tee Configure.out

Checking Configure.Out, there are some missing libraries which you have to fix.

.....
.....

ESPRESSO can take advantage of several optimized numerical libraries
(essl, fftw, mkl...). This configure script attempts to find them,
but may fail if they have been installed in non-standard locations.
If a required library is not found, the local copy will be compiled.

The following libraries have been found:
BLAS_LIBS= -lblas
LAPACK_LIBS=-L/usr/local/lib -llapack -lblas
FFT_LIBS=
.....
.....

References:

  1. Project Site (https://github.com/QEF/q-e/releases)
  2. Compiling Quantum Espresso

Installing the Seurat Package on R-3.6.2

Step 1: Compiling R on CentOS 7

a. Download R Package from https://cran.r-project.org/

b. Untar and Compile the R-Package

$ tar -zxvf R-3.6.2.tar.gz
$ cd R-3.6.2
$ ./configure --prefix=/home/myuser/R-3.6.2
$ make
$ make install

Step 2: Compile multtest package
Seurat is dependent on mulltest. But if you try installing muttest using R, you will have this error.

$ cd /home/myuser/R-3.6.2
$ ./R
install.packages("multtest")
Warning message:
package ‘multtest’ is not available (for R version 3.6.2)

To solve the issue, you have to install BiocManager first and use BiocManager to install mulltest

install.packages("BiocManager")
BiocManager::install("multtest")

Step 3: Finally, you can install Seurat

install.packages("Seurat")

References:

    1. Resampling-based multiple hypothesis testing

 

Compiling tesseract-5.0 on CentOS 7

Step 1: Installing the basic CentOS Dependencies

# yum install autoconf automake libtool pkgconfig.x86_64 libpng12-devel.x86_64 libjpeg-devel libtiff-devel.x86_64 zlib-devel.x86_64

Step 2: Compile Leptonica-1.79

Step 3: Compile tesseract-5.0

Load a recent version of GNU C++. In my case, I’ve used GNU-6.5 and ISL-0.18 (Integer Set Library)

a. Yum install git

$ yum install git

b. Configure lept.pc for Leptonica-1.79 if you have placed leptonica in a unique directory

$ export PKG_CONFIG_PATH=/usr/local/leptonica-1.79.0/lib/pkgconfig

c. Compile the Tesseract

$ git clone https://github.com/tesseract-ocr/tesseract.git
$ cd tesseract
$ ./autogen.sh
$ ./configure --prefix=/usr/local/tesseract-5.0 
$ make
$ make install

References:

  1. Using Tesseract on Ubuntu
  2. Tessaract by Ivanzz

Compile StringTie on CentOS 7.6

StringTie is a fast and highly efficient assembler of RNA-Seq alignments into potential transcripts.

System Information:

  • CentOS 7.6
  • GNU-4.8.5

The installation instruction can be found in the site

$ git clone https://github.com/gpertea/stringtie
$ cd stringtie
$ make release

Conduct Tests

$ ./run_tests.sh
..Downloading test data..
..unpacking test data..
Test 1: Short reads
OK.
Test 2: Short reads and super-reads
OK.
Test 3: Long reads
OK.
Test 4: Long reads with annotation guides
OK.

Compiling BoltzTraP-1.2.5 with GNU

BoltzmannTransportProperties (BoltzTraP) can be obtained from http://www.icams.de/boltztrap

Point 1: Got to boltztrap src directory

$ cd $HOME/boltztrap-1.2.5/src

Point 2: Edit the Makefile

# gfortran
SHELL = /bin/sh
FC = gfortran
LIBS = -llapack -lblas

# generic
LINKER  =       $(FC)
LFLAGS  = -g #-pg
FGEN =
DESTDIR = .

EXECNAME = BoltzTraP

###############################################################################
FFLAGS = $(FGEN) $(FOPT)
EXEC = $(DESTDIR)/$(EXECNAME)

#..............................................................................
#
#  Object files common to both REAL and COMPLEX type subroutines
#
OBJS = gmlib2.o reallocate.o \
     m_bandstructure.o m_input.o m_fermimod.o \
     m_interfaces.o \
     latgen2.o generic_field.o gtfnam.o gen_lattpoints.o \
     BoltzTraP.o crystal_band.o wien_band.o phon_band.o generic_band.o pw_interface.o \
     add_inv.o bandana.o stern1.o kdelta.o fite4.o sortag.o gplbands.o \
     dos.o ifflim.o setfft.o c3fft.o boseintegrals.o fermiintegrals.o bands.o kcomp.o \
     bz.o fermisurface.o setfft2.o write_dx_fs.o write_dx_bz.o write_cube_fs.o \
     dos_histogram.o dos_tetra.o noculc.o dosvv.o readvv.o \
     phonondrag.o
#OBJS = \
#        reallocate.o defs.o modules.o broad.o add_inv.o \
#        c3fft.o gtfnam.o ifflim.o mknam.o read_energy.o \
#        transport.o stern.o kdelta.o gen_lattpoints.o fite4.o setfft.o \
#        starfkt2.o dos.o

$(EXEC): $(OBJS)
        $(LINKER) $(LFLAGS) -o $(EXEC) $(OBJS) $(LDFLAGS) $(LIBS) $(LFLAGS)


clean:
        rm -f *.o *.mod *.pc *.pcl *~

.SUFFIXES: .F90 .o
.F90.o:
        $(FC) $(FFLAGS) -c $<

3. Make Install

$ make

You should see a BoltzTraP executable in the src directory

Installing conda packages locally in own directory

Step 1: Module load the anaconda module in HPC (if you are using Module Environment)

$ module load anaconda2019/python3

Step 2: Create a virtual environment locally and install packages

$ conda create -y -n my-own-conda-env

You can rename my-own-conda-env with any name. It is good practise to have a “-env” postfix.

Step 2(Option) : Install conda-env in non-default directory

If you wish to install in other directory instead of the default ~/.conda/envs, you have to use the “-p” parameters

$ conda create -y -p ~/my-conda-direct-env

Step 3: Activate the conda environment

$ source activate my-own-conda-env

You should see the environment activated which is prefix the login prompt.

(conda-env) [user1@hpc-n001 ~]$

Step 4: Download and install the conda package

$ conda install -c  ipyrad ipyrad

Step 5: Check for installed package

$ conda list

Step 6: Deactivate environment

$ source deactivate

The command prompt will be revert back without the conda environment

[user1@hpc-n001 ~]$