From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: [PATCH 0/4] Add sra-tools. Date: Tue, 14 Apr 2015 14:54:25 +0200 Message-ID: Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:38347) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yi0MP-0006b6-Tw for guix-devel@gnu.org; Tue, 14 Apr 2015 08:54:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Yi0ML-000110-N0 for guix-devel@gnu.org; Tue, 14 Apr 2015 08:54:37 -0400 Received: from venus.bbbm.mdc-berlin.de ([141.80.25.30]:42737) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Yi0ML-0000zI-Aa for guix-devel@gnu.org; Tue, 14 Apr 2015 08:54:33 -0400 Received: from localhost (localhost [127.0.0.1]) by venus.bbbm.mdc-berlin.de (Postfix) with ESMTP id BE1E33807C9 for ; Tue, 14 Apr 2015 14:54:31 +0200 (CEST) Received: from venus.bbbm.mdc-berlin.de ([127.0.0.1]) by localhost (venus.bbbm.mdc-berlin.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id odItzLJOs8Vp for ; Tue, 14 Apr 2015 14:54:25 +0200 (CEST) Received: from HTCAONE.mdc-berlin.net (mab.citx.mdc-berlin.de [141.80.36.102]) by venus.bbbm.mdc-berlin.de (Postfix) with ESMTP for ; Tue, 14 Apr 2015 14:54:25 +0200 (CEST) List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: Guix-devel Hi Guix, this patch set adds the sra tools (a collection containing the commonly encountered "fastq-dump") and its dependencies. The NCBI stuff uses a frustrating custom configuration script written in Perl and I had to learn more about how it works and what assumptions it makes than I hoped for. More significant changes had to be made to the build of both ncbi-vdb and sra-tools, because sra-tools expects the sources and the raw build output of ncbi-vdb to lie in some directory. It would not build against an installed version of ncbi-vdb due to missing libraries and missing includes. As both of these projects have been split from the same repository in the recent past and are so closely coupled I took the liberty to let ncbi-vdb install more headers and more libraries, so that at the time sra-tools is built we don't need to rebuild ncbi-vdb just to get at the includes and interface libraries. The phases do not look pretty but they are as clean as I could make them. I had to remove libxml2 from the inputs to sra-tools, resulting in a failure to build a couple of loader tools. The reason for this is that I encountered linker problems like these: ~~~~~~~~~~ ... gcc -static-libstdc++ -static-libgcc -o /buildtmp/nix-build-sra-tools-2.4.5= -5.drv-4/sra-tools-2.4.5-5/build/sra-tools/linux/gcc/x86_64/rel/bin/fastq-l= oad.2.4.5 -DNDEBUG -m64 -L/gnu/store/pjjpcai7ckqlric0p0xdrzjsifdx1d44-hdf5-= 1.8.12/lib -L/gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib = -L/gnu/store/xbvqikb6y02zqpvac876sxy4ci937spd-file-5.22/lib -L/gnu/store/35= gqycjy0ih7wrjadzhvixya0a905sf5-fuse-2.9.3/lib pstring.o common-xml.o experi= ment-xml.o run-xml.o loader-file.o loader-fmt.o sra-writer.o loader.o write= r-illumina.o writer-454.o writer-ion-torrent.o fastq-fmt.o -L/buildtmp/nix-= build-sra-tools-2.4.5-5.drv-4/sra-tools-2.4.5-5/build/sra-tools/linux/gcc/x= 86_64/rel/lib -L/buildtmp/nix-build-sra-tools-2.4.5-5.drv-4/sra-tools-2.4.5= -5/build/sra-tools/linux/gcc/x86_64/rel/ilib -L/gnu/store/xldsqaj0cw6v89kar= yx1izhhmxihpmb1-ngs-sdk-1.1.0/lib64 -L/gnu/store/fjpl0vm87dzn3hpvqaca625bq8= hv1mha-ncbi-vdb-2.4.5-5/ilib -Wl,-Bstatic -lkapp -lload -lncbi-wvdb -lkxfs = -lkxml -Wl,-Bdynamic -ldl -lpthread -Wl,-Bstatic -L/gnu/store/3x1qwishrgvsv= addhv2238s27jcg60wp-libxml2-2.9.0/lib -lxml2 -Wl,-Bdynamic -lm /gnu/store/3x1makeqwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a= (xmlIO.o): In function `xmlGzfileOpenW': (.text+0x2c9): undefined reference to `gzdopen' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `xmlGzfileOpenW': (.text+0x2fe): undefined reference to `gzopen64' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `xmlGzfileClose': (.text+0xe85): undefined reference to `gzclose' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `xmlGzfileRead': (.text+0xeb5): undefined reference to `gzread' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `xmlGzfileWrite': (.text+0x1095): undefined reference to `gzwrite' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `__xmlParserInputBufferCreateFilename': (.text+0x1d82): undefined reference to `gzdirect' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `xmlGzfileOpen_real': (.text+0x171f): undefined reference to `gzdopen' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xml= IO.o): In function `xmlGzfileOpen_real': (.text+0x175d): undefined reference to `gzopen64' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xzl= ib.o): In function `xz_decomp': (.text+0x5a4): undefined reference to `lzma_code' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xzl= ib.o): In function `xz_make': (.text+0x983): undefined reference to `lzma_properties_decode' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xzl= ib.o): In function `xz_make': (.text+0xbb8): undefined reference to `lzma_auto_decoder' /gnu/store/3x1qwishrgvsvaddhv2238s27jcg60wp-libxml2-2.9.0/lib/libxml2.a(xzl= ib.o): In function `__libxml2_xzclose': (.text+0x1605): undefined reference to `lzma_end' collect2: error: ld returned 1 exit status