[Bioperl-l] install Bio::DB::BigWig ?

Dan Bolser dan.bolser at gmail.com
Tue Mar 29 08:57:29 UTC 2011


On 28 March 2011 22:26, Lincoln Stein <lincoln.stein at gmail.com> wrote:
> Hi Dan,
> There are two problems that I can see. One is a series of compiler warnings
> when compiling the Perl .XS interface file. These are likely nothing to
> worry about, but I should fix them. What versions of Perl and gcc do you
> have installed? I don't see them when I compile on my system.

gcc --version # gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-48)
perl --version # v5.8.8 built for i386-linux-thread-multi

uname -a # Linux cricket 2.6.18-194.32.1.el5PAE #1 SMP Wed Jan 5
18:43:13 EST 2011 i686 i686 i386 GNU/Linux



I got kent from git and built it with the following commands:

cd kent/src/lib/
echo $MACHTYPE # i686-redhat-linux-gnu
export MACHTYPE=i686
make
cd ../
export KENT_SRC=`pwd`

# NOTE, both $MACHTYPE and $KENT_SRC should be defined here
cpan -i Bio::DB::BigWig # FAILS AS DESCRIBED

cd /tmp
wget http://search.cpan.org/CPAN/authors/id/L/LD/LDS/Bio-BigFile-1.05.tar.gz
tar zxfv Bio-BigFile-1.05.tar.gz
cd Bio-BigFile-1.05
# PATCH  Build.PL AS DESCRIBED (add -lssl after -lz)
perl Build.PL
./Build # SEE WARNINGS AS BEFORE
./Build test # Files=5, Tests=135, Result: PASS
./Build install


Note, above I didn't patch kent to include -fPIC as suggested
previously. I don't see any noticeable difference if I do on this
arch.

It would be good if the instructions above could make it into the
Bio::DB::BigWig README, as a few people have expressed confusion about
the exact steps (the README in kent is a bit confusing, and mostly
unnecessary for the purposes of building Bio::DB::BigWig).


> The second issue is that the SSL library is not being linked in. Previously
> there was no dependency on SSL, but Jim may recently have added this to the
> BigWig library in order to allow it to read bigwig files from https servers.
> I see that you added a -lssl to Build.PL; does this make the tests work
> again?

Yup, when I add -lssl to Build.PL (as per the previous diff), the
tests pass, but I still see the warnings.

I'm sure I saw the warnings disappear when I was playing with
different versions of Bio::DB::BigWig, but now they occur without
fail... if you pardon the pun.

I have a seeking suspicion that it's related to my perl 'build kit'...
However, since I'm not sure what module versions to report, and since
you promised to fix these issues anyway, I won't dig into it.


Thanks for help, and thanks for the support on
irc://irc.freenode.net/#bioperl, without which I would have probably
give up!

Cheers,
Dan.

> Lincoln
>
> On Sun, Mar 27, 2011 at 2:00 PM, Dan Bolser <dan.bolser at gmail.com> wrote:
>>
>> Hello,
>>
>> I'm trying to get Bio::DB::BigWig installed again, this time on a
>> different box.
>>
>> I installed kent from git as described here:
>> http://genome.ucsc.edu/admin/git.html
>>
>>
>> I made the following changes, similar to those described previously:
>>
>> git diff
>> diff --git a/src/inc/common.mk b/src/inc/common.mk
>> index c7fc557..5187901 100644
>> --- a/src/inc/common.mk
>> +++ b/src/inc/common.mk
>> @@ -3,7 +3,7 @@ CC=gcc
>>  ifeq (${COPT},)
>>     COPT=-O -g
>>  endif
>> -CFLAGS=
>> +CFLAGS=-fPIC
>>  HG_DEFS=-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE
>> -DMACHTYPE_${MACHTYPE}
>>  HG_INC=-I../inc -I../../inc -I../../../inc -I../../../../inc
>> -I../../../../../inc
>>
>> diff --git a/src/utils/bedRemoveOverlap/bedRemoveOverlap.c
>> b/src/utils/bedRemoveOverlap/bedRemoveOverlap.c
>> index fa2292b..acb97d2 100644
>> --- a/src/utils/bedRemoveOverlap/bedRemoveOverlap.c
>> +++ b/src/utils/bedRemoveOverlap/bedRemoveOverlap.c
>> @@ -68,7 +68,7 @@ while (lineFileNext(lf, &line, &lineSize))
>>     /* Parse current line. */
>>     wordCount = chopLine(line, row);
>>     if (wordCount == ArraySize(row))
>> -         errAbort("Too many fields (%d max is %lu) line %d of %s",
>> wordCount, ArraySize(row),
>> +         errAbort("Too many fields (%d max is %u) line %d of %s",
>> wordCount, ArraySize(row),
>>             lf->lineIx, lf->fileName);
>>     char *chrom = row[0];
>>     unsigned int start = lineFileNeedNum(lf, row, 1);
>>
>>
>> After setting MACHTYPE=i686, MYSQLLIBS=/usr/lib/mysql/libmysqlclient.a
>> -lz, and MYSQLINC=/usr/include/mysql, everything seemed to build
>> correctly after typing 'make' in kent/src (should I be building it
>> differently?)
>>
>>
>>
>> Now when I try to install Bio::DB::BigWig via cpan, things look like this:
>>
>> cpan
>>
>> cpan shell -- CPAN exploration and modules installation (v1.9600)
>> Enter 'h' for help.
>>
>> cpan[1]> install Bio::DB::BigWig
>> CPAN: Storable loaded ok (v2.25)
>> Going to read '/homes/dbolser/.cpan/Metadata'
>>  Database was generated on Sun, 27 Mar 2011 01:38:43 GMT
>> Running install for module 'Bio::DB::BigWig'
>> Running make for L/LD/LDS/Bio-BigFile-1.05.tar.gz
>> CPAN: Digest::SHA loaded ok (v5.61)
>> CPAN: Compress::Zlib loaded ok (v2.03)
>> Checksum for
>> /homes/dbolser/.cpan/sources/authors/id/L/LD/LDS/Bio-BigFile-1.05.tar.gz
>> ok
>> CPAN: Archive::Tar loaded ok (v1.76)
>> Bio-BigFile-1.05
>> Bio-BigFile-1.05/Changes
>> Bio-BigFile-1.05/LICENSE
>> Bio-BigFile-1.05/DISCLAIMER
>> Bio-BigFile-1.05/Build.PL
>> Bio-BigFile-1.05/typemap
>> Bio-BigFile-1.05/META.yml
>> Bio-BigFile-1.05/README
>> Bio-BigFile-1.05/MANIFEST
>> Bio-BigFile-1.05/ExampleData
>> Bio-BigFile-1.05/ExampleData/dpy-27-variable.bw
>> Bio-BigFile-1.05/ExampleData/hg18.chrom.sizes
>> Bio-BigFile-1.05/ExampleData/refSeqTest.flat.bb
>> Bio-BigFile-1.05/ExampleData/WS180.chrom.sizes
>> Bio-BigFile-1.05/ExampleData/refSeqTest.flat.bed
>> Bio-BigFile-1.05/ExampleData/refSeqTest.as
>> Bio-BigFile-1.05/ExampleData/dpy-27-variable-trunk.wig.gz
>> Bio-BigFile-1.05/bin
>> Bio-BigFile-1.05/bin/bigWigToWig.pl
>> Bio-BigFile-1.05/bin/wigToBigWig.pl
>> Bio-BigFile-1.05/bin/index_bigwigset.pl
>> Bio-BigFile-1.05/lib
>> Bio-BigFile-1.05/lib/Bio
>> Bio-BigFile-1.05/lib/Bio/DB
>> Bio-BigFile-1.05/lib/Bio/DB/BigFile.pm
>> Bio-BigFile-1.05/lib/Bio/DB/BigWigSet.pm
>> Bio-BigFile-1.05/lib/Bio/DB/BigFile.xs
>> Bio-BigFile-1.05/lib/Bio/DB/BigBed.pm
>> Bio-BigFile-1.05/lib/Bio/DB/BigWig.pm
>> Bio-BigFile-1.05/lib/Bio/DB/BigFile
>> Bio-BigFile-1.05/lib/Bio/DB/BigFile/Iterators.pm
>> Bio-BigFile-1.05/lib/Bio/DB/BigFile/Constants.pm
>> Bio-BigFile-1.05/t
>> Bio-BigFile-1.05/t/02.bigbed.t
>> Bio-BigFile-1.05/t/03.bigwig_high.t
>> Bio-BigFile-1.05/t/04.bigbed_high.t
>> Bio-BigFile-1.05/t/05.bigwig_set.t
>> /bin/tar: Read 9216 bytes from -
>> Bio-BigFile-1.05/t/01.bigwig.t
>> Bio-BigFile-1.05/patches
>> Bio-BigFile-1.05/patches/kent_src_patch_macosx.diff
>> CPAN: File::Temp loaded ok (v0.22)
>> CPAN: Parse::CPAN::Meta loaded ok (v1.4401)
>> CPAN: CPAN::Meta loaded ok (v2.110580)
>> CPAN: Module::CoreList loaded ok (v2.46)
>> CPAN: Time::HiRes loaded ok (v1.9717)
>>
>>  CPAN.pm: Going to build L/LD/LDS/Bio-BigFile-1.05.tar.gz
>>
>>
>> This module requires the compiled jkweb.a library from Jim Kent's source
>> tree.
>> If you haven't already done so, please download the source from
>> http://hgdownload.cse.ucsc.edu/admin/jksrc.zip, unpack it, and build the
>> contents of the "kent/src/lib" subdirectory as directed in the README.
>> Then
>> enter the location of the "kent/src" subdirectory at the prompt below.
>> To prevent
>> this message from appearing in the future, set the environment
>> variable KENT_SRC
>> to point to the "kent/src" subdirectory.
>>
>> Please enter the location of Kent source tree:
>> /homes/dbolser/build/src/kent/src
>>
>> Created MYMETA.yml and MYMETA.json
>> Creating new 'Build' script for 'Bio-BigFile' version '1.05'
>> Building Bio-BigFile
>> gcc -I/homes/dbolser/build/src/kent/src/inc
>> -I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE
>> -DXS_VERSION="1.05" -DVERSION="1.05" -fPIC -Wformat=0 -DMACHTYPE_i686
>> -c -D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe
>> -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE
>> -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -O2 -g -pipe -Wall
>> -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector
>> --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic
>> -fasynchronous-unwind-tables -o lib/Bio/DB/BigFile.o
>> lib/Bio/DB/BigFile.c
>> lib/Bio/DB/BigFile.xs: In function
>> ‘XS_Bio__DB__bbiFile_bigWigIntervalQuery’:
>> lib/Bio/DB/BigFile.xs:172: warning: operation on ‘list’ may be undefined
>> lib/Bio/DB/BigFile.xs: In function
>> ‘XS_Bio__DB__bbiFile_bigWigSummaryArray’:
>> lib/Bio/DB/BigFile.xs:193: warning: operation on ‘values’ may be undefined
>> lib/Bio/DB/BigFile.xs: In function
>> ‘XS_Bio__DB__bbiFile_bigBedSummaryArray’:
>> lib/Bio/DB/BigFile.xs:252: warning: operation on ‘values’ may be undefined
>> lib/Bio/DB/BigFile.xs: In function ‘XS_Bio__DB__bbiFile_bigWigSummary’:
>> lib/Bio/DB/BigFile.xs:296: warning: operation on ‘summary’ may be
>> undefined
>> lib/Bio/DB/BigFile.xs:302: warning: operation on ‘summaryList’ may be
>> undefined
>> lib/Bio/DB/BigFile.xs:290: warning: unused variable ‘i’
>> lib/Bio/DB/BigFile.xs: In function ‘XS_Bio__DB__bbiFile_bigBedSummary’:
>> lib/Bio/DB/BigFile.xs:326: warning: operation on ‘summary’ may be
>> undefined
>> lib/Bio/DB/BigFile.xs:332: warning: operation on ‘summaryList’ may be
>> undefined
>> lib/Bio/DB/BigFile.xs:320: warning: unused variable ‘i’
>> lib/Bio/DB/BigFile.xs: In function
>> ‘XS_Bio__DB__bbiFile_bigWigSummaryArrayExtended’:
>> lib/Bio/DB/BigFile.xs:358: warning: operation on ‘summary’ may be
>> undefined
>> lib/Bio/DB/BigFile.xs:354: warning: unused variable ‘summaryList’
>> lib/Bio/DB/BigFile.xs: In function
>> ‘XS_Bio__DB__bbiFile_bigBedSummaryArrayExtended’:
>> lib/Bio/DB/BigFile.xs:395: warning: operation on ‘summary’ may be
>> undefined
>> lib/Bio/DB/BigFile.xs:391: warning: unused variable ‘summaryList’
>> lib/Bio/DB/BigFile.xs: In function ‘XS_Bio__DB__bbiFile_chromList’:
>> lib/Bio/DB/BigFile.xs:424: warning: operation on ‘RETVAL’ may be undefined
>> lib/Bio/DB/BigFile.xs: In function
>> ‘XS_Bio__DB__bbiFile_bigBedIntervalQuery’:
>> lib/Bio/DB/BigFile.xs:450: warning: operation on ‘list’ may be undefined
>>
>> ExtUtils::Mkbootstrap::Mkbootstrap('blib/arch/auto/Bio/DB/BigFile/BigFile.bs')
>> gcc -shared -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions
>> -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386
>> -mtune=generic -fasynchronous-unwind-tables -L/usr/local/lib -o
>> blib/arch/auto/Bio/DB/BigFile/BigFile.so lib/Bio/DB/BigFile.o
>> /homes/dbolser/build/src/kent/src/lib/i686/jkweb.a -lz
>>  LDS/Bio-BigFile-1.05.tar.gz
>>  ./Build -- OK
>> CPAN: YAML loaded ok (v0.72)
>> Running Build test
>> t/01.bigwig.t ....... Can't load
>>
>> '/homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so'
>> for module Bio::DB::BigFile:
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so:
>> undefined symbol: SSL_library_init at
>> /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.
>>  at t/01.bigwig.t line 28
>> Compilation failed in require at t/01.bigwig.t line 28.
>> BEGIN failed--compilation aborted at t/01.bigwig.t line 28.
>> t/01.bigwig.t ....... Dubious, test returned 2 (wstat 512, 0x200)
>> Failed 29/29 subtests
>> t/02.bigbed.t ....... Can't load
>>
>> '/homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so'
>> for module Bio::DB::BigFile:
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so:
>> undefined symbol: SSL_library_init at
>> /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.
>>  at t/02.bigbed.t line 28
>> Compilation failed in require at t/02.bigbed.t line 28.
>> BEGIN failed--compilation aborted at t/02.bigbed.t line 28.
>> t/02.bigbed.t ....... Dubious, test returned 2 (wstat 512, 0x200)
>> Failed 15/15 subtests
>> t/03.bigwig_high.t .. Can't load
>>
>> '/homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so'
>> for module Bio::DB::BigFile:
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so:
>> undefined symbol: SSL_library_init at
>> /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.
>>  at
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7
>> Compilation failed in require at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7.
>> BEGIN failed--compilation aborted at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7.
>> Compilation failed in require at t/03.bigwig_high.t line 28.
>> BEGIN failed--compilation aborted at t/03.bigwig_high.t line 28.
>> t/03.bigwig_high.t .. Dubious, test returned 2 (wstat 512, 0x200)
>> Failed 32/32 subtests
>> t/04.bigbed_high.t .. Can't load
>>
>> '/homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so'
>> for module Bio::DB::BigFile:
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so:
>> undefined symbol: SSL_library_init at
>> /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.
>>  at
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7
>> Compilation failed in require at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7.
>> BEGIN failed--compilation aborted at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7.
>> Compilation failed in require at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigBed.pm
>> line 7.
>> BEGIN failed--compilation aborted at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigBed.pm
>> line 7.
>> Compilation failed in require at t/04.bigbed_high.t line 28.
>> BEGIN failed--compilation aborted at t/04.bigbed_high.t line 28.
>> t/04.bigbed_high.t .. Dubious, test returned 2 (wstat 512, 0x200)
>> Failed 35/35 subtests
>> t/05.bigwig_set.t ... Can't load
>>
>> '/homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so'
>> for module Bio::DB::BigFile:
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../blib/arch/auto/Bio/DB/BigFile/BigFile.so:
>> undefined symbol: SSL_library_init at
>> /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 230.
>>  at
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7
>> Compilation failed in require at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7.
>> BEGIN failed--compilation aborted at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWig.pm
>> line 7.
>> Compilation failed in require at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWigSet.pm
>> line 177.
>> BEGIN failed--compilation aborted at
>>
>> /homes/dbolser/.cpan/build/Bio-BigFile-1.05-RcWq8X/t/../lib/Bio/DB/BigWigSet.pm
>> line 177.
>> Compilation failed in require at t/05.bigwig_set.t line 19.
>> BEGIN failed--compilation aborted at t/05.bigwig_set.t line 19.
>> t/05.bigwig_set.t ... Dubious, test returned 2 (wstat 512, 0x200)
>> No subtests run
>>
>> Test Summary Report
>> -------------------
>> t/01.bigwig.t     (Wstat: 512 Tests: 0 Failed: 0)
>>  Non-zero exit status: 2
>>  Parse errors: Bad plan.  You planned 29 tests but ran 0.
>> t/02.bigbed.t     (Wstat: 512 Tests: 0 Failed: 0)
>>  Non-zero exit status: 2
>>  Parse errors: Bad plan.  You planned 15 tests but ran 0.
>> t/03.bigwig_high.t (Wstat: 512 Tests: 0 Failed: 0)
>>  Non-zero exit status: 2
>>  Parse errors: Bad plan.  You planned 32 tests but ran 0.
>> t/04.bigbed_high.t (Wstat: 512 Tests: 0 Failed: 0)
>>  Non-zero exit status: 2
>>  Parse errors: Bad plan.  You planned 35 tests but ran 0.
>> t/05.bigwig_set.t (Wstat: 512 Tests: 0 Failed: 0)
>>  Non-zero exit status: 2
>>  Parse errors: No plan found in TAP output
>> Files=5, Tests=0,  1 wallclock secs ( 0.04 usr  0.01 sys +  0.93 cusr
>> 0.11 csys =  1.09 CPU)
>> Result: FAIL
>> Failed 5/5 test programs. 0/0 subtests failed.
>>  LDS/Bio-BigFile-1.05.tar.gz
>>  ./Build test -- NOT OK
>> //hint// to see the cpan-testers results for installing this module, try:
>>  reports LDS/Bio-BigFile-1.05.tar.gz
>> Running Build install
>>  make test had returned bad status, won't install without force
>> Failed during this command:
>>  LDS/Bio-BigFile-1.05.tar.gz                  : make_test NO
>>
>> cpan[2]>
>>
>>
>>
>>
>>
>>
>> Any hints?
>>
>> Cheers,
>> Dan.
>>
>> _______________________________________________
>> Bioperl-l mailing list
>> Bioperl-l at lists.open-bio.org
>> http://lists.open-bio.org/mailman/listinfo/bioperl-l
>
>
>
> --
> Lincoln D. Stein
> Director, Informatics and Biocomputing Platform
> Ontario Institute for Cancer Research
> 101 College St., Suite 800
> Toronto, ON, Canada M5G0A3
> 416 673-8514
> Assistant: Renata Musa <Renata.Musa at oicr.on.ca>
>




More information about the Bioperl-l mailing list