Difference between revisions of "GotCloud: Binary Releases"

From Genome Analysis Wiki
Jump to navigationJump to search
 
(8 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
  
The [[GotCloud]] software has been developed and tested on Linux Ubuntu 12.10 and 12.04.2 LTS. While it should work on other Linux systems, they have not yet been tested.  It is not supported on Windows.
+
The [[GotCloud]] software has been developed and tested on Ubuntu Linux 12.04 and newer and Red Hat Enterprise Linux 6. While it should work on other Linux systems, they have not yet been tested.  It is not supported on Windows or Mac OS X.
  
  
Line 15: Line 15:
  
 
The Binary Releases are available as:
 
The Binary Releases are available as:
* [[#Debian Packages|debian packages]] - require root access to install
+
* [[#GotCloud_Debian_Packages|debian packages]] - require root access to install
 
* [[#Tar Binary Releases|tarballs]] - anyone can untar
 
* [[#Tar Binary Releases|tarballs]] - anyone can untar
  
Line 73: Line 73:
 
</code>
 
</code>
  
====Install the GotCloud Debian bin Package====
+
====Install the GotCloud Debian Packages====
 +
 
 +
<b>Install Debian packages with root access</b>
  
 
Installation normally requires one to have <b>root access</b> and uses <b>dpkg</b> which Debian users will recognize.
 
Installation normally requires one to have <b>root access</b> and uses <b>dpkg</b> which Debian users will recognize.
Line 94: Line 96:
 
   #  'libssl0.9.8' is not installed, do 'sudo apt-get install libssl0.9.8'
 
   #  'libssl0.9.8' is not installed, do 'sudo apt-get install libssl0.9.8'
 
   #============================================================
 
   #============================================================
   ...
+
 +
   <b>sudo dpkg -i ~/debs/gotcloud-test_*_amd64.deb</b>
 
</code>
 
</code>
  
 
<b>Install Debian packages without root access</b>
 
<b>Install Debian packages without root access</b>
 +
 
Installing Debian packages generally requires root access, however, you can install as a non-root user using the following instructions (bash commands shown here):
 
Installing Debian packages generally requires root access, however, you can install as a non-root user using the following instructions (bash commands shown here):
 
<code>
 
<code>
Line 103: Line 107:
 
  destdir=$HOME                        # Where you want GotCloud installed
 
  destdir=$HOME                        # Where you want GotCloud installed
 
   
 
   
  pkg=[path_to_deb_file]/gotcloud-bin_*_amd64.deb
+
  dpkg -x [path_to_deb_file]/gotcloud-bin_*_amd64.deb $tempdir
dpkg -x $pkg $tempdir
 
 
  rsync -av --delete $tempdir/usr/local/gotcloud/* $destdir/gotcloud || exit 1
 
  rsync -av --delete $tempdir/usr/local/gotcloud/* $destdir/gotcloud || exit 1
 
  rm -rf $tempdir
 
  rm -rf $tempdir
 
   
 
   
  pkg=[path_to_deb_file]/gotcloud-test_*_amd64.deb
+
  dpkg -x [path_to_deb_file]/gotcloud-test_*_amd64.deb $tempdir
dpkg -x $pkg $tempdir
 
 
  rsync -av --delete $tempdir/usr/local/gotcloud/* $destdir/gotcloud || exit 1
 
  rsync -av --delete $tempdir/usr/local/gotcloud/* $destdir/gotcloud || exit 1
 
  rm -rf $tempdir
 
  rm -rf $tempdir
Line 116: Line 118:
 
</code>
 
</code>
  
 
+
If there were messages about missing packages, install them with the commands shown by the script. Installing missing packages <b>will</b> require root access.
If there were messages about missing packages, install them with the commands shown by the script:
 
  
 
<code>
 
<code>

Latest revision as of 23:29, 7 January 2016

Back to parent: GotCloud


The GotCloud software has been developed and tested on Ubuntu Linux 12.04 and newer and Red Hat Enterprise Linux 6. While it should work on other Linux systems, they have not yet been tested. It is not supported on Windows or Mac OS X.


If you run into any problems with GotCloud, please check: GotCloud: FAQs or for problems/solutions for a specific version, Version Problems.

GotCloud Binary Releases

GotCloud releases with the precompiled binary executables are available for download.

The binaries were compiled on Linux Ubuntu.

If you need the source, see GotCloud: Source Releases for information on obtaining the source.

The Binary Releases are available as:


The GotCloud software is distributed in several packages. These can be installed on traditional Debian systems as well as Ubuntu (where it has been tested). The software should run on all versions from Ubuntu Lucid (9.04) through Oneric (12.10). It has not been tested on other Debian systems, but it is likely it will work on those systems too. This software should work on any Unix system - only requiring recompilation from the source files.

The software is distributed in a single package including both the aligner and variant caller.

There is also a separate package to test the installation.

GotCloud Debian Packages

If you would like to install from:


Installing Debian Packages

The debian files are available for download from ftp://share.sph.umich.edu/gotcloud/ :

 gotcloud-bin_latest_amd64.deb          aligner and variant caller
 gotcloud-test_latest_amd64.deb         test data for software
 M.n/gotcloud-bin_M.n_amd64.deb         version M.n of aligner and variant caller
 M.n/gotcloud-test_M.n_amd64.deb        version M.n of test data for software

Where 'M.n' is replaced with the specific version numbers.

Installing Debian packages normally requires root access, however, you can install as a non-root user (see below).

See GotCloud: Versions for details on the changes for each version.


Fetch the GotCloud Debian Packages

 #  The easiest way:
 mkdir debs
 cd debs
 wget --retr-symlinks ftp://share.sph.umich.edu/gotcloud/gotcloud\*latest\*.deb

 #  Another way:
 ftp share.sph.umich.edu
 Connected to share.sph.umich.edu.
 220 (vsFTPd 2.3.5)
 Name (share.sph.umich.edu:tpg): anonymous
 230 Login successful.
 Remote system type is UNIX.
 Using binary mode to transfer files.
 ftp> prompt
 Interactive mode off.
 ftp> cd gotcloud
 250 Directory successfully changed.
 ftp> mget gotcloud*latest*.deb
 ftp> quit
 221 Goodbye.

Install the GotCloud Debian Packages

Install Debian packages with root access

Installation normally requires one to have root access and uses dpkg which Debian users will recognize. We recommend you install the first one separately so you can easily identify messages about prerequisite files that need to be installed:

 sudo dpkg -i ~/debs/gotcloud-bin_*_amd64.deb
 Selecting previously unselected package gotcloud-bin.
 (Reading database ... 25372 files and directories currently installed.)
 Unpacking gotcloud-bin (from .../gotcloud-bin_1.0_amd64.deb) ...
 Setting up gotcloud-bin (1.0) ...
 #============================================================
 #   'java' is not installed, do 'sudo apt-get install java-common default-jre'
 #============================================================
 #============================================================
 #   'make' is not installed, do 'sudo apt-get install make'
 #============================================================
 #============================================================
 #   'libssl0.9.8' is not installed, do 'sudo apt-get install libssl0.9.8'
 #============================================================

 sudo dpkg -i ~/debs/gotcloud-test_*_amd64.deb

Install Debian packages without root access

Installing Debian packages generally requires root access, however, you can install as a non-root user using the following instructions (bash commands shown here):

tempdir=/tmp/$$.gotcloud.removeme     # Temp directory
destdir=$HOME                         # Where you want GotCloud installed

dpkg -x [path_to_deb_file]/gotcloud-bin_*_amd64.deb $tempdir
rsync -av --delete $tempdir/usr/local/gotcloud/* $destdir/gotcloud || exit 1
rm -rf $tempdir

dpkg -x [path_to_deb_file]/gotcloud-test_*_amd64.deb $tempdir
rsync -av --delete $tempdir/usr/local/gotcloud/* $destdir/gotcloud || exit 1
rm -rf $tempdir

$destdir/gotcloud/scripts/check_requirements.sh   # Check requirements

If there were messages about missing packages, install them with the commands shown by the script. Installing missing packages will require root access.

 sudo apt-get update
 sudo apt-get install java-common default-jre make libssl0.9.8  # For example

Testing the GotCloud Installation

We recommend that at least the first time, you install the test packages so you can conveniently test the installation and make sure everything runs smoothly. The tests run within a few minutes and are self checking, so unless you see obvious errors, you can be reasonably sure everything is set up properly. You only need to do this once, unless you have made significant changes to your Unix system.

 sudo dpkg -i ~/debs/gotcloud-test*_amd64.deb
 Selecting previously unselected package gotcloud-test.
 (Reading database ... 27376 files and directories currently installed.)
 Unpacking gotcloud-test (from .../gotcloud-test_1.0_amd64.deb) ...
 Setting up gotcloud-test (1.0) ...
 #======================================================================
 #   GotCloud README
 #======================================================================
 To test the GotCloud aligner, run:
   gotcloud align --test ~/testalign
 This will create/clear the output directory ~/testalign.
 Test results and a log file are put in this directory.
 Results are self-checked and if errors should occur, it will be obvious.
 
 To test the GotCloud snp caller, run:
   gotcloud snpcall --test ~/testsnp
 This will create/clear the output directory ~/testsnp.
 Test results and a log file are put in this directory.
 Results are self-checked and if errors should occur, it will be obvious.

Login as a normal user (not as root) and do:

 #   Test the aligner (3 minutes +/- 1 minute)
 /usr/local/gotcloud/bin/gotcloud align -test ~/testalign
 Removing any previous results from: /home/myuser/testalign/aligntest
 Running GOTCLOUD TEST, test log in: /home/myuser/testalign/aligntest.log
 Created /home/myuser/testalign/aligntest/Makefiles/align_Sample2.Makefile
 Created /home/myuser/testalign/aligntest/Makefiles/align_Sample1.Makefile
 ---------------------------------------------------------------------
 Waiting while samples are processed...
 Processing finished in 63 secs with no errors reported
 Results from DIFF will be in /home/myuser/testalign/diff_logfiles_results.txt
 Successful comparison of data in '/home/myuser/testalign/aligntest' and '/usr/local/gotcloud/test/align/expected/aligntest'
 Successfully ran the test case, congratulations!
 rm -rf ~/testalign              # If no error
 
 
 #   Test snp calling  (7 minutes +/-2 minute)
 /usr/local/gotcloud/bin/gotcloud snpcall --test ~/testsnp
 Removing any previous results from: /home/myuser/testsnp/umaketest
 Running GOTCLOUD TEST, test log in: /home/myuser/testsnp/umaketest.log
 Results from DIFF will be in /home/myuser/testsnp/diff_logfiles_results_umake.txt
 Successful comparison of data in '/home/myuser/testsnp/umaketest' and '/usr/local/gotcloud/test/umake/expected/umaketest'
 Successfully ran the test case, congratulations!
 rm -rf ~/testsnp              # If no error

Tar Binary Releases

The tar binary releases contain the precompiled binaries and scripts necessary to run gotcloud.

If you would like to install from:

Installing Tar Releases

The tar files are available for download from ftp://share.sph.umich.edu/gotcloud/ :

 gotcloudBin_latest.tgz          aligner and variant caller
 gotcloudTest_latest.tgz         test data for software
 M.n/gotcloud-bin_M.n.tar.gz     version M.n of aligner and variant caller
 M.n/gotcloud-test_M.n.tar.gz    version M.n of test data for software

Where 'M.n' is replaced with the specific version numbers.

See GotCloud: Versions for details on the changes for each version.

Fetch the Tar Releases

 #  The easiest way:
 wget --retr-symlinks ftp://share.sph.umich.edu/gotcloud/gotcloud-\*latest\*.tgz

 #  Another way:
 ftp share.sph.umich.edu
 Connected to share.sph.umich.edu.
 220 (vsFTPd 2.3.5)
 Name (share.sph.umich.edu:tpg): anonymous
 230 Login successful.
 Remote system type is UNIX.
 Using binary mode to transfer files.
 ftp> prompt
 Interactive mode off.
 ftp> cd gotcloud
 250 Directory successfully changed.
 ftp> mget gotcloud-*latest*.tgz
 ftp> quit
 221 Goodbye.

Unpack the Tar Release

Unpack the realeases:

tar xf gotcloud-*latest*.tgz

Testing the GotCloud Release

We recommend that at least the first time, you download the test packages so you can conveniently test the installation and make sure everything runs smoothly. The tests run within a few minutes and are self checking, so unless you see obvious errors, you can be reasonably sure everything is set up properly. You only need to do this once, unless you have made significant changes to your Unix system.

The test case results are self-checked and if errors should occur, it will be obvious.

 #   Test the aligner (3 minutes +/- 1 minute)
 gotcloud/bin/gotcloud align --test ~/testalign
 Removing any previous results from: /home/myuser/testalign/aligntest
 Running GOTCLOUD TEST, test log in: /home/myuser/testalign/aligntest.log
 Created /home/myuser/testalign/aligntest/Makefiles/align_Sample2.Makefile
 Created /home/myuser/testalign/aligntest/Makefiles/align_Sample1.Makefile
 ---------------------------------------------------------------------
 Waiting while samples are processed...
 Processing finished in 63 secs with no errors reported
 Results from DIFF will be in /home/myuser/testalign/diff_logfiles_results.txt
 Successful comparison of data in '/home/myuser/testalign/aligntest' and 'gotcloud/test/align/expected/aligntest'
 Successfully ran the test case, congratulations!
 rm -rf ~/testalign              # If no error
 
 
 #   Test snp calling  (7 minutes +/-2 minute)
 gotcloud/bin/gotcloud snpcall --test ~/testsnp
 Removing any previous results from: /home/myuser/testsnp/umaketest
 Running GOTCLOUD TEST, test log in: /home/myuser/testsnp/umaketest.log
 Results from DIFF will be in /home/myuser/testsnp/diff_logfiles_results_umake.txt
 Successful comparison of data in '/home/myuser/testsnp/umaketest' and 'gotcloud/test/umake/expected/umaketest'
 Successfully ran the test case, congratulations!
 rm -rf ~/testsnp              # If no error

Creating Your Own Debian Package From the Source

The process to create your own Debian package from the source files is straight-forward for Debian users. The source files actually contain source for the executables, the test data and the scripts and configuration files used by the users. These steps build two debian package files - one for the test data (test) and one for the binaries and scripts (bin).

In order to simplify the building of two packages, the debian directory contains the control files for both packages (bin and test). This requires that the normal control files (e.g. rules) be named rules.test and rules.bin and the shell script (makedeb.sh) be aware of this nuance. In addition the shell script can make an RPM file (using alien) and will help manage the version for GotCloud.

Fetch the Source Including the Test Files

#  The easiest way:
wget ftp://share.sph.umich.edu/gotcloud/gotcloudWithTest_latest.tgz
#  Another way:
ftp share.sph.umich.edu
Connected to share.sph.umich.edu.
220 (vsFTPd 2.3.5)
Name (share.sph.umich.edu:tpg): anonymous
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> prompt
Interactive mode off.
ftp> cd gotcloud
250 Directory successfully changed.
ftp> get gotcloudWithTest_latest.tgz
ftp> quit
221 Goodbye.
#  Extract the source files
cd ~/src                 # Or wherever you want the source files
tar xzf path/gotcloudWithTest_latest.tgz


Fetch the Source Excluding the Test Files

Follow the above logic, but use: gotcloud_latest.tgz

Fetch just the Test Files

Follow the above logic, but use: gotcloudTest_latest.tgz


Create the Debian Package Files

cd ~/src                 # Or wherever you put the source files
cd gotcloud*

#   Add -replace only if rebuilding the same version
debian/makedeb.sh  bin  = 
 dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2 ...
 dpkg-buildpackage: export C...
   [lines deleted]
 Generate package: cd gotcloud-bin; dpkg-buildpackage -b -us -uc -rfakeroot
 ===> Version '1.01 of 'gotcloud-bin' will install into 'usr/local/gotcloud'
 install -d debian/tmp/DEBIAN
 cp debian/control debian/postinst debian/postrm debian/tmp/DEBIAN
 install -d debian/tmp/usr/share/doc/gotcloud-bin_1.01
 sed -e s/99.99/1.01/g < debian/changelog > debian/changelog.new
   [lines deleted]
 Converting symlinks into the actual executables to be distributed
   [lines deleted]
 dpkg-deb: building package `gotcloud-bin' in `./gotcloud-bin_1.01_amd64.deb'.
 Package file now in /home/myuser/dev/gotcloud
 -rw-r--r-- 1 myuser myuser 3592780 Feb 19 11:59 gotcloud-bin_1.01_amd64.deb

#   Add -replace only if rebuilding the same version
debian/makedeb.sh  test =
 dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2 ...
 dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor): -D_FORTIFY_SOURCE=2
   [lines deleted]
 Generate package: cd gotcloud-test; dpkg-buildpackage -b -us -uc -rfakeroot
 ===> Version '1.01 of 'gotcloud-test' will install into 'usr/local/gotcloud'
 install -d debian/tmp/DEBIAN
 cp debian/control debian/postinst debian/postrm debian/tmp/DEBIAN
 install -d debian/tmp/usr/share/doc/gotcloud-test_1.01
 sed -e s/99.99/1.01/g < debian/changelog > debian/changelog.new
   [lines deleted]
 dpkg-deb: building package `gotcloud-test' in `./gotcloud-test_1.01_amd64.deb'.
 Package file now in /home/myuser/dev/gotcloud
 -rw-r--r-- 1 myuser myuser 433269556 Feb 19 13:49 gotcloud-test_1.01_amd64.deb

The deb files will be created in the directory above the debian directory (e.g. gotcloud)