Difference between revisions of "GotCloud: Binary Releases"
Terry Gliedt (talk | contribs) |
Terry Gliedt (talk | contribs) |
||
Line 23: | Line 23: | ||
<b>mkdir debs</b> | <b>mkdir debs</b> | ||
<b>cd debs</b> | <b>cd debs</b> | ||
− | <b>wget ftp://share.sph.umich.edu/gotcloud/gotcloud\*latest\*.deb</b> | + | <b>wget --retr-symlinks ftp://share.sph.umich.edu/gotcloud/gotcloud\*latest\*.deb</b> |
# Another way: | # Another way: |
Revision as of 13:51, 16 April 2013
GotCloud Debian Packages
Installing Debian Packages
Back to parent: GotCloud
The GotCloud software is distributed in several Debian 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 package to test the installation. The following naming conventions are used:
gotcloud-bin_M.n_amd64.deb aligner and variant caller
gotcloud-test_M.n_amd64.deb test data for software
where 'M.n' are the normal major-minor version system.
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 bin Package
Installation 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'
#============================================================
...
If there were messages about missing packages, install them now
sudo apt-get update
sudo apt-get install java-common default-jre make libssl0.9.8
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 (ubuntu, not as root) and do:
# Test the aligner (2 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 (5 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
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
Compile the Source
cd ~/src # Or wherever you put the source files
cd gotcloud*
cd src
cat INSTALL # Read about dependencies
make clean # Clean out cruft from a previous run
make
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)