Installation of SHOREmap v3.x


Operating system

Currently, SHOREmap v3.x has been tested only on Linux Mint 14 Nadia with kernel 3.5.0-25-generic (x86_64. Check the bit-info of your operating system with 'uname -m'). The requirements on RAM and hard disk depend on the size of resequencing data. For Arabidopsis thaliana/Arabis alpina, it requires around 1GB RAM. Note that Linux Mint 14 Nadia is a bit old, you may try up to date systems like Linux Mint 18 (reports are welcomed if you have problems).

Download and Installation of library DISLIN

SHOREmap v3.x uses the scientific library DISLIN for data visualization. The Linux distribution of DISLIN requires the OpenMotif library*, and* (*note: for static compiling with dislin*.a, it may also require OpenGL library as static compiling of openGL is always not suggested). If you do not have them installed on your operating system, please open a terminal application and install from the command line (note: this command requires root rights; if you do not have root rights, please ask the administrator for help)

Check if* installed

ls /usr/lib/*

If 'ls: cannot access /usr/lib/*: No such file or directory' occurs, install it with

sudo apt-get update
sudo apt-get install libmotif4

Check again (and you should have them listed on the screen)

ls /usr/lib/*

Check if exists (note that 'x86_64' indicates your operating system is 64-bit; if you have a 32-bit operating system, you should replace 'x86_64' with 'i386' (i486, i586 etc) in all the following checking)

ls /usr/lib/x86_64-linux-gnu/ (or ls /usr/lib/i386-linux-gnu/

If 'ls: cannot access /usr/lib/x86_64-linux-gnu/ No such file or directory' occurs, install it with

sudo apt-get install libxt-dev
(#answer 'y' if asked to continue!)

Then, check again,

ls /usr/lib/x86_64-linux-gnu/ (or ls /usr/lib/i386-linux-gnu/

Once the above is finished, download DISLIN to path/to/softwares/ (i.e., the folder where you want to store the installation-package-of-DISLIN) with the command (*note that the following assumes the system is 64-bit; if your system is 32-bit, please remove the suffix '_64' from the following commands)

wget -P path/to/softwares


wget -P path/to/softwares

Correspondingly, there are two ways to install DISLIN. Installation with 'dislin-11.0.linux.i586_64.deb' is easier and thus recommended, by which there will be no further settings required for compiling SHOREmap. However, this requires that users have system-root right (sudo). If you have no such right, another way is to install DISLIN with 'dislin-11.0.linux.i586_64.tar.gz', for which several further settings have to be carried out for compiling SHOREmap properly. Specific commands for installing DISLIN in two ways are given below.

Installation of DISLIN with 'dislin-11.0.linux.i586_64.deb'. Change the working directory of the terminal to path/to/softwares with the command

cd path/to/softwares

Then execute the following command

sudo dpkg -i dislin-11.0.linux.i586_64.deb

By default, DISLIN is installed in /usr/local/dislin. Once the above is successfully finished, one can directly go to compile SHOREmap (in Section below: Download and Installation of SHOREmap v3.x).

Installation of DISLIN with 'dislin-11.0.linux.i586_64.tar.gz'. According to the manual of DISLIN,

1) Unpack the tar.gz file with the command

gzip -d dislin-11.0.linux.i586_64.tar.gz

2) Restore files from the tar file with the command

tar xvf dislin-11.0.linux.i586_64.tar

3) Change the working directory to the extraction directory of DISLIN with the command

cd dislin-11.0

Define an environment variable 'DISLIN' with a directory where DISLIN is expected to be installed. Supposing the directory is path/to/dislin/, type on the command line with

export DISLIN

5) Run the install program with the command


6) Copy dislin_d.h to folder dislin/

cp ./examples/dislin_d.h $DISLIN
(#answer 'y' if asked to overwrite!)

7) Delete directory 'dislin-11.0' (not necessarily) after installation with the commands

cd ..
rm -rf dislin-11.0

Download and Installation of SHOREmap v3.x

Opening a terminal, we can download SHOREmap v3.x (need to replace x with sub-version number, latest as v3.8) and store it in path/to/softwares with the command

mkdir softwares
wget -P softwares

If you have downloaded SHOREmap_v3.x.tar.gz, then do the following

cd softwares
mkdir SHOREmap_v3.x
gzip -d SHOREmap_v3.x.tar.gz
tar xvf SHOREmap_v3.x.tar -C SHOREmap_v3.x

Get into SHOREmap_v3.x/ to compile SHOREmap. Remerber to carry out the following necessary settings for compiling if you have installed DISLIN with the tar.gz.

1) Replace some files in folder path/to/SHOREmap_v3.x/dislin

cd path/to/SHOREmap_v3.x/
rm dislin/*dislin_d.*
cp $DISLIN/*dislin_d.* dislin
(# $DISLIN is the path where you've installed dislin; answer 'y' if asked to overwrite!)

2) Open and edit /etc/profile (or .bashrc)

vi /etc/profile

Press key 'esc' and key 'i' to enter the edit mode of vi. If LD_LIBRARY_PATH already exists,insert the following statement into your /etc/profile,

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/SHOREmap_v3.x/dislin


export LD_LIBRARY_PATH=/path/to/SHOREmap_v3.x/dislin

3) Save the changes and exit vi with :wq, and do the following

source /etc/profile

Exit the terminal and open a new one to make the above configure become active.

Now we enter path/to/softwares/SHOREmap_v3.x again with the command

cd path/to/softwares/SHOREmap_v3.x

Compilation of SHOREmap v3.x has been tested with g++ (Ubuntu/Linaro 4.7.2-2ubuntu1) 4.7.2 and g++ (Debian 4.7.2-5) 4.7.2 (earlier g++ versions might not work). Please check your g++ version with the command

g++ --version

if the screen information shows 'bash: g++: command not found', install it with

sudo apt-get install build-essential
#(answer 'y' if asked to continue!)

Suppose g++ is ready, compile the source codes with the command


Then a binary SHOREmap will be generated if the compilation is successfully finished.

Note 1: if the compilation complains like "/usr/bin/ld: cannot find -lXt" (or "/usr/bin/ld: cannot find -ldislin_d"), please open the makefile with the command

vi makefile

Press keys 'esc' and 'i' on the keyboard to edit makefile; move the cursor with arrow keys to the position before -lXt, and edit -L/path/to/; if '-ldislin_d' is not found, edit -L/path/to/dislin_d/ before -ldislin_d). After that, press keys 'esc', type in :wq, and press enter to save editing and quit vi. ('-L' tells the linker where to find the library given by -l)

Note 2: if '/usr/lib/ld: warning:, needed by ./dislin/, not found (try using -rpath or -rpath-link)' occurs, and you have installed libmotif4, do the following:

cp /usr/lib/ /usr/lib/

We can make SHOREmap avaiable for general use by inserting the following command into /etc/profile

export PATH=$PATH:/path/to/SHOREmap_v3.x


source /etc/profile

To check what functions are incorporated in SHOREmap v3.x, we can type in the command below and press key 'enter'


The following information will be printed on screen:

NOT enough input parameters. Check necessary parameters below:
Usage of SHOREmap version 3.x: SHOREmap FUNCTION [OPTIONS]
FUNCTION is one of:
backcross     analyzes backcrossing-derived mapping population
outcross       analyzes outcrossing--derived mapping population
annotate      annotates mutations based on gene feature (new: visualization of annotations is possible)
create          creates markers according to two backgrounds
extract         extracts base call info according to markers
convert        converts VCF4.1 into acceptable formats; or (new) converts shore pileup into shore consensus_summary format
idFilter      filters indels in one sample according to another (new)
about          displays general/version/publication info about SHOREmap
For detailed COMMAND_arguments, please try: SHOREmap COMMAND