Test-drive the GATK tools and Best Practices pipelines on Terra


Check out this blog post to learn how you can get started with GATK and try out the pipelines in preconfigured workspaces (with a user-friendly interface!) without having to install anything.

how to build gatk?

odoyle81odoyle81 ColoradoMember

I'm trying to build gatk from the source but I can't find any guides on this.
I tried cloning the git:
git clone git://github.com/broadgsa/gatk-protected.git
then running "ant" from that directory. What am I missing?

I get a bunch of "illegal start of type" errors and then this:
BUILD FAILED
/home/paultanger/gatk-protected/build.xml:453: Compile failed; see the compiler error output for details.

Best Answer

Answers

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    Hi there,

    You should be able to run ant clean dist from the cloned directory.

  • odoyle81odoyle81 ColoradoMember

    hmm, ok. I still get the same errors with that command..

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    That might be due to either java version or ant version issues. I'll ask one of our software engineers to comment.

  • odoyle81odoyle81 ColoradoMember

    ok.. I just updated to java 7 because I thought it needed that. Here are my versions:

    java version "1.7.0_25"
    OpenJDK Runtime Environment (rhel-2.3.10.4.el6_4-x86_64)
    OpenJDK 64-Bit Server VM (build 23.7-b01, mixed mode)

    Apache Ant version 1.7.1 compiled on August 24 2010

  • ecyehecyeh Member

    Is it possible to find the git revision number of a specific release(e.g. 2.2-12)? I see that releases 2.X are all tagged, but releases of number like 2.X-Y are not. I tried to figure out the revision by commit date but in vain.

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    Fair point about the JDK version -- that should do the trick.

    Regarding the versions, each commit made after a 2.X release triggers a 2.X-Y release. So the first commit will be 2.X-1, the second is 2.X-2 etc.

  • droazendroazen Cambridge, MAMember, Broadie, Dev ✭✭

    @ecyeh

    To convert from a commit id to a GATK version number, the command is git describe --long commit_id.

    The command below will let you browse the repository history by version number:

    git rev-list master | xargs git describe --long | less

  • odoyle81odoyle81 ColoradoMember

    Ok, I followed the instructions here to install Sun's Java 7. Kind of a pain in the butt, but I think it worked. Thanks!

    http://www.if-not-true-then-false.com/2010/install-sun-oracle-java-jdk-jre-7-on-fedora-centos-red-hat-rhel/

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    Glad to hear your problem is solved!

  • ecyehecyeh Member
    edited August 2013

    Thank you for the useful command. It is helpful.

    @Geraldine_VdAuwera said:
    Regarding the versions, each commit made after a 2.X release triggers a 2.X-Y release. So the first commit will be 2.X-1, the second is 2.X-2 etc.

    Thank you for clarifying it. I think this rule is consistent with the result of git describe --long as given by droazen. But the version number obtained in this way is not unique. For example I find two 2.5.9 and two 2.5-2 in git rev-list master. Is the a way to figure out which revision is the one once officially released on GATK web site?

  • droazendroazen Cambridge, MAMember, Broadie, Dev ✭✭
    edited August 2013

    @ecyeh

    The version numbers generated by git describe --long are unique if you include the third part (eg., 2.7-1-g42d771f). We don't display the third part of the version on the web site, but if you download and run the GATK the full version number will be displayed.

    If you're interested in checking out the source for older versions, however, (like the 2.5-2 release), it would be difficult to disambiguate between commits since we don't post a list of old GATK versions anywhere. Below are the full version numbers for all official GATK releases since 2.0. You should be able to check out any of these in the gatk-protected repository via the command git checkout version_number (eg., git checkout 2.6-5-gba531bd).

    2.7-1-g42d771f
    2.6-5-gba531bd
    2.6-4-g3e5ff60
    2.6-3-gdee51c4
    2.6-2-ge03a5e9
    2.5-2-gf57256b
    2.4-9-g532efad
    2.4-8-g7ab7c87
    2.4-7-g5e89f01
    2.4-3-g2a7af43
    2.3-9-ge5ebf34
    2.3-8-gd82471a
    2.3-6-gebbba25
    2.3-5-g49ed93c
    2.3-4-g57ea19f
    2.3-3-g4706074
    2.3-2-g65db1dd
    2.3-1-g34dfc00
    2.3-0-g9593e74
    2.2-16-g9f648cb
    2.2-15-g9214b2f
    2.2-14-g11728e9
    2.2-13-gab9f9b3
    2.2-10-gbbafb72
    2.2-9-g54ae978
    2.2-8-gec077cd
    2.2-5-g3bf5e3f
    2.2-4-g4a174fb
    2.2-3-gde33222
    2.2-2-gf44cc4e
    2.2-0-g6701363
    2.1-13-g1706365
    2.1-12-ga99c19d
    2.1-11-g13c0244
    2.1-10-gdbc86ec
    2.1-9-gb90951c
    2.1-8-g5efb575
    2.1-6-g6a46042
    2.1-5-gf3daab0
    2.1-4-ge32f61d
    2.1-3-g8892c10
    2.1-2-g916702e
    2.1-1-g270cc30
    2.1-0-ge42e50d
    2.0-39-gd091f72
    2.0-38-g45f7b0d
    2.0-37-g490c3ac
    2.0-36-gf5c1c1a
    2.0-35-g2d70733
    2.0-34-g07bda93
    2.0-32-g4e321a5
    2.0-31-gf57127e
    2.0-29-g49f6361
    2.0-25-gf27c683
    2.0-23-ge9a19be
    2.0-21-ga40b695
    2.0-7-g7323e98
    2.0-0-g4c0ffd4
    

    David

  • ecyehecyeh Member

    @droazen
    This list is exactly what I need, thank you for posting it. However, I found that some older version numbers cannot be checked out in this way. The error message is

    error: pathspec '2.0-0-g4c0ffd4' did not match any file(s) known to git.

    I have not tried all versions in the list but it seems that the oldest version that I can successfully git-checkout is 2.4-3-g2a7af43.

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    Oh, these are the version numbers of our internal development repository, the numbers for the public repos appear to be different. @droazen, can you please give the list for gatk-protected?

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    @ecyeh, I spoke to @droazen offline and it seems that the situation is actually more complicated than I thought. We changed how we manage version numbers on the various repos after 2.3-9, starting with 2.4, so we currently don't have a set list of version numbers corresponding to the releases for anything older than 2.4. Unfortunately it would take too much effort than we can spare right now to put such a list together, so at this time we can't provide you with this information. In any case please realize that we do not recommend using older versions of GATK, and in fact we don't provide any support outside of the current version due to resource limitations.

    I'm sorry to disappoint you but I hope this won't be too much of an obstacle in your work.

  • ecyehecyeh Member

    @Geraldine_VdAuwera I totally understand the situation, and still appreciate your great support. For a new research project we can always choose to use the latest gatk. But for an ongoing research, sticking to the same version may help to obtain more consistent results. That's why sometimes we prefer to fix a bug of a specific revision directly, instead of upgrading the whole GATK package to the latest revision.

    As GATK is evolving very fast, I think it will be helpful if every future public release of GATK are all tagged on GitHub, not only the major/minor releases.

  • Geraldine_VdAuweraGeraldine_VdAuwera Cambridge, MAMember, Administrator, Broadie admin

    @ecyeh said:
    As GATK is evolving very fast, I think it will be helpful if every future public release of GATK are all tagged on GitHub, not only the major/minor releases.

    The reason we don't tag releases at the micro-level (ie 2.7-2) is that each of them corresponds to a single commit in the repo, so given the major/minor tags it should be fairly trivial to look those up. But I will look into making it easier to look up the list as such.

  • YingLiuYingLiu ChinaMember

    @odoyle81
    git clone git://github.com/broadgsa/gatk-protected.git
    ant
    I meet the following errors :
    Buildfile: build.xml does not exist!
    Build failed

    Do you know why ? thank you !

    Issue · Github
    by Sheila

    Issue Number
    1991
    State
    closed
    Last Updated
    Assignee
    Array
    Milestone
    Array
    Closed By
    vdauwera
  • ronlevineronlevine Lexington, MAMember ✭✭
    edited April 2017

    Follow the build instructions in README.md.

  • ronlevineronlevine Lexington, MAMember ✭✭

    Type mvn verify or mvn verify -P\!queue if you don't need to build the queue.

Sign In or Register to comment.