Difference between revisions of "Template:ToolGitRepo"

From Genome Analysis Wiki
Jump to navigationJump to search
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
The {{{repoName}}} repository is available {{#if: {{{noDownload|}}} |  |both via [[#Releases|release downloads]] and}} via github.
+
{{#if: {{{noDownload|}}} |  | The {{{repoName}}} repository is available both via [[#Releases|release downloads]] and via github.}}
  
On github, https://github.com/statgen/{{{repoName}}}, you can both browse and download the latest version of the repository as well as explore the history of changes.
+
On github, https://github.com/statgen/{{{repoName}}}, you can both browse and download the {{{repoName}}} source code as well as explore the history of changes.
  
You can access the latest version with or without git.
+
You can obtain the source either with or without git.
  
 
{{#if: {{{nolibStatGen|}}} | |
 
{{#if: {{{nolibStatGen|}}} | |
Line 45: Line 45:
  
 
=== Downloading From GitHub Without Git ===
 
=== Downloading From GitHub Without Git ===
 +
If you download the latest code/version, make sure you periodically update it by downloading a newer version.
 +
 
From github you can download:
 
From github you can download:
 
# Latest Code (master branch)
 
# Latest Code (master branch)
{{#if: {{{latestReleaseBranch|}}} | #Latest Release (via a branch) }}
+
#: via Website
 +
#:# Goto: https://github.com/statgen/{{{repoName}}}
 +
#:# Click on the <code>Download ZIP</code> button on the right side panel.
 +
#: via Command Line
 +
#:: <code>wget https://github.com/statgen/{{{repoName}}}/archive/master.tar.gz</code>
 +
#::: or
 +
#:: <code>wget https://github.com/statgen/{{{repoName}}}/archive/master.zip</code>
 
# Specific Release (via a tag)
 
# Specific Release (via a tag)
 +
#: via Website
 +
#:# Goto: https://github.com/statgen/{{{repoName}}}/releases to see the available releases
 +
#:# Click <code>zip</code> or <code>tar.gz</code> for the desired version.
 +
#: via Command Line
 +
#:: <code>wget https://github.com/statgen/{{{repoName}}}/archive/<tagName>.tar.gz</code>
 +
#::: or
 +
#:: <code>wget https://github.com/statgen/{{{repoName}}}/archive/<tagName>.zip</code>
 +
{{#if: {{{latestReleaseBranch|}}} |
 +
#Latest Release (via a branch)
 +
#: via Website
 +
#:# Goto: https://github.com/statgen/{{{repoName}}}/tree/{{{latestReleaseBranch}}} to see the latest release
 +
#:# Click on the <code>Download ZIP</code> button on the right side panel.
 +
#: via Command Line
 +
#:: <code>wget https://github.com/statgen/{{{repoName}}}/archive/{{{latestReleaseBranch}}}.tar.gz</code>
 +
#::: or
 +
#:: <code>wget https://github.com/statgen/{{{repoName}}}/archive/{{{latestReleaseBranch}}}.zip</code>
 +
}}
  
==== Downloading a Released Version ====
+
After downloading the file, uncompress (unzip/untar) it. The directory created will be named <code>{{{repoName}}}-<name of version you downloaded></code>.
You can download a specific release from github.  To see the releases available, go to: https://github.com/statgen/{{{repoName}}}/releases
 
 
 
You can either download via:
 
* Website
 
*:Click on <code>zip</code> or <code>tar.gz</code> to download that version.
 
* Command Line
 
* wget https://github.com/statgen/{{{repoName}}}/archive/<tagName>.tar.gz
 
 
 
==== Downloading the Latest Version ====
 
 
 
Periodically download the latest copy from github.
 
 
 
You can either download the latest copy via:
 
* Website
 
*:Click on <code>zip</code> or <code>tar.gz</code> to download that version.
 
* Command Line
 
* wget https://github.com/statgen/{{{repoName}}}/archive/master.tar.gz
 
 
 
 
 
The downloaded tar file is named "statgen-{{{repoName}}}-someHexNumber.tar.gz". The directory created when it is untared shares the same base name. I recommend that you do not change the name of the directory. If you want one called {{{repoName}}}, create a link to this directory. The hex number in the directory name identifies the version of the repository that you downloaded and is necessary to easily troubleshoot any issues you encounter. If you must rename the directory, be sure to record the hex number that was on the download for future reference.
 
  
 +
{{#if: {{{skipBuild|}}}||
 
== Building ==
 
== Building ==
 
After obtaining the {{{repoName}}} repository (either by download or from github), compile the code using:
 
After obtaining the {{{repoName}}} repository (either by download or from github), compile the code using:
Line 89: Line 95:
  
 
To see all make options, type <code>make help</code>.
 
To see all make options, type <code>make help</code>.
 +
}}
 +
 +
 +
If compilation fails due to warnings being treated as errors, please contact us so we can fix the warnings.  As a work-around to get it to compile, you can disable the treatment of warnings as errors by editing libStatGen/general/Makefile to remove <code>-Werror</code>.

Latest revision as of 00:18, 13 November 2017

The {{{repoName}}} repository is available both via release downloads and via github.

On github, https://github.com/statgen/{{{repoName}}}, you can both browse and download the {{{repoName}}} source code as well as explore the history of changes.

You can obtain the source either with or without git.

The releases may be available both with and without libStatGen included.

If you do not use the release version that already contains libStatGen, you need to download the library: libStatGen.

If you try to compile {{{repoName}}} and it cannot find libStatGen, it will fail and provide instructions of what to do next:

  • if libStatGen is in a different location then expected
    • follow the directions to set the path to libStatGen
  • if libStatGen is not downloaded and you have git
    • make libStatGen will download via git and build libStatGen
  • if libStatGen is not downloaded and you don't have git

Using Git To Track the Current Development Version

Clone (get your own copy)

You can create your own git clone (copy) using:

git clone https://github.com/statgen/{{{repoName}}}.git

or

git clone git://github.com/statgen/{{{repoName}}}.git

Either of these commands create a directory called {{{repoName}}} in the current directory.

Then just cd {{{repoName}}} and compile.

Get the latest Updates (update your copy)

To update your copy to the latest version (a major advantage of using git):

  1. cd pathToYourCopy/{{{repoName}}}
  2. make clean
  3. git pull
  4. make all

Git Refresher

If you decide to use git, but need a refresher, see How To Use Git or Notes on how to use git (if you have access)


Downloading From GitHub Without Git

If you download the latest code/version, make sure you periodically update it by downloading a newer version.

From github you can download:

  1. Latest Code (master branch)
    via Website
    1. Goto: https://github.com/statgen/{{{repoName}}}
    2. Click on the Download ZIP button on the right side panel.
    via Command Line
    wget https://github.com/statgen/{{{repoName}}}/archive/master.tar.gz
    or
    wget https://github.com/statgen/{{{repoName}}}/archive/master.zip
  2. Specific Release (via a tag)
    via Website
    1. Goto: https://github.com/statgen/{{{repoName}}}/releases to see the available releases
    2. Click zip or tar.gz for the desired version.
    via Command Line
    wget https://github.com/statgen/{{{repoName}}}/archive/<tagName>.tar.gz
    or
    wget https://github.com/statgen/{{{repoName}}}/archive/<tagName>.zip


After downloading the file, uncompress (unzip/untar) it. The directory created will be named {{{repoName}}}-<name of version you downloaded>.

Building

After obtaining the {{{repoName}}} repository (either by download or from github), compile the code using:

make all  

Object (.o) files are compiled into the obj directory with a subdirectory debug and profile for the debugging and profiling objects.

This creates the executable(s) in the {{{repoName}}}/bin/ directory, the debug executable(s) in the {{{repoName}}}/bin/debug/ directory, and the profiling executable(s) in the {{{repoName}}}/bin/profile/ directory.

make install installs the opt binary if you have permission.

make test compiles for opt, debug, and profile and runs the tests (found in the test subdirectory).

To see all make options, type make help.


If compilation fails due to warnings being treated as errors, please contact us so we can fix the warnings. As a work-around to get it to compile, you can disable the treatment of warnings as errors by editing libStatGen/general/Makefile to remove -Werror.