From: Peter C. <pc...@ma...> - 2013-11-19 22:16:47
|
Hello, can someone briefly describe how git working directories should be arranged and any other configuration necessary in order to successfully build samtools from the Github develop branch? I have tried cloning the htslib repo into the same parent directory as samtools, and even made an htslib symlink within the samtools directory to try to get the header files where they seem to be desired. I know that someone out there must be building from this branch, and would appreciate any hints on how this should be done. In return, I would be happy to add the answer to the FAQ page of the wiki. Thanks, Peter ---------------------------------------------------------------- Peter Chines Computer Scientist Genome Technology Branch FUSION Study Group National Human Genome Research Institute National Institutes of Health 50 South Drive, Room 5318, MSC 8004 pc...@ma... Bethesda, MD 20892-8004 +1-301-435-6075 ---------------------------------------------------------------- |
From: Robert D. <rmd...@sa...> - 2013-11-19 23:46:26
|
On Tue, 19 Nov 2013, Peter Chines wrote: > Hello, can someone briefly describe how git working directories should > be arranged and any other configuration necessary in order to > successfully build samtools from the Github develop branch? > > I have tried cloning the htslib repo into the same parent directory as > samtools, and even made an htslib symlink within the samtools directory > to try to get the header files where they seem to be desired. You should be able to do it like this: git clone -b develop https://github.com/samtools/htslib.git htslib git clone -b develop https://github.com/samtools/samtools.git samtools cd samtools make (The makefile in samtools includes a rule to build htslib as well.) It's important to make sure you have the 'develop' branch of both check-outs. By default you get 'master' for htslib, which can lead to some confusion if you don't realise that has happened. > I know that someone out there must be building from this branch, and > would appreciate any hints on how this should be done. In return, I > would be happy to add the answer to the FAQ page of the wiki. It would be worth pointing out that develop is a work-in-progress, so not the a good choice for end-users after a stable version. The stable versions are, as I understand it, still being released as tarballs on sourceforge. Rob Davies rm...@sa... The Sanger Institute http://www.sanger.ac.uk/ Hinxton, Cambs., Tel. +44 (1223) 834244 CB10 1SA, U.K. Fax. +44 (1223) 494919 -- The Wellcome Trust Sanger Institute is operated by Genome Research Limited, a charity registered in England with number 1021457 and a company registered in England with number 2742969, whose registered office is 215 Euston Road, London, NW1 2BE. |
From: John M. <jm...@sa...> - 2013-11-20 11:19:25
|
On 19 Nov 2013, at 23:46, Robert Davies wrote: > On Tue, 19 Nov 2013, Peter Chines wrote: >> Hello, can someone briefly describe how git working directories should >> be arranged and any other configuration necessary in order to >> successfully build samtools from the Github develop branch? >> >> I have tried cloning the htslib repo into the same parent directory as >> samtools That is the current default place for it; probably the only thing you were missing, as Rob noted, is that currently you need the develop branch of htslib too. > It's important to make sure you have the 'develop' branch of both > check-outs. By default you get 'master' for htslib, which can lead to > some confusion if you don't realise that has happened. I've now made develop the default branch for htslib too, so you'll get the current code by default in future git clones. Apologies for the confusion. > It would be worth pointing out that develop is a work-in-progress, so not > the a good choice for end-users after a stable version. The stable > versions are, as I understand it, still being released as tarballs on > sourceforge. +1 At the moment, this is a work-in-progress and the build process is a bit rough. As we move closer to making a formal release, we're planning to add a configure script to make htslib-finding more flexible and less mysterious. The eventual release samtools and bcftools source tarballs will also contain their own copies of htslib (to be used optionally; if you already have htslib installed you'll probably prefer to use that), so will be as easy to build as previous stable releases. John -- The Wellcome Trust Sanger Institute is operated by Genome Research Limited, a charity registered in England with number 1021457 and a company registered in England with number 2742969, whose registered office is 215 Euston Road, London, NW1 2BE. |
From: Peter C. <pc...@ma...> - 2013-11-22 10:28:43
|
On Wed, Nov 20, 2013 at 11:19:16AM +0000, John Marshall wrote: > That is the current default place for it; probably the only thing you > were missing, as Rob noted, is that currently you need the develop > branch of htslib too. That was indeed correct. Thank you both very much. > I've now made develop the default branch for htslib too, so you'll get > the current code by default in future git clones. Apologies for the > confusion. This also worked, although it wasn't obvious to me at first. The correct code was checked out and the compilation went smoothly, but in git the remote branch being tracked was not "develop", but instead "bcftools+calling": $ git clone https://github.com/samtools/htslib.git Cloning into 'htslib'... ... $ cd htslib/ $ git branch * bcftools+calling It turns out that at this moment, the "develop" and "bcftools+calling" branch point to the same commit (as determined by git ls-remote). Presumably, once they diverge, new clones will automatically follow "develop", as intended. In the meantime, in order to follow the latest (unstable) development, one should use the syntax Rob suggested earlier: $ git clone -b develop https://github.com/samtools/htslib.git Or "git checkout develop" after cloning. Thanks again for your insight, your timely fix, and your continuing work on this fundamental software. --Peter |