[Bioperl-l] Bioperl 1.5.2 and Bioperl-ext 1.5.1 - symbol lookup error

William Burke bill.burke.860 at gmail.com
Mon Jul 8 15:22:48 UTC 2013


Hi BioPerl Group,

I am trying to install Bioperl C-extension 1.5.1 with BioPerl 1.5.2 on a 
CentOS release 6.3 (Final) server with perl version v5.10.1 x86_64.

I have installed BioPerl 1.5.2 but failing to install Bioperl C-extension 
1.5.1
Once I attempt to install the Bioperl C-extension 1.5.1 Align perl module 
and test I get the following error:

perl: symbol lookup error: 
/usr/local/lib64/perl5/auto/Bio/Ext/Align/Align.so: undefined symbol: 
bp_sw_change_max_BaseMatrix_kbytes

I am not sure but I think that this type of error occurs when one has a 
binary compiled in one version of Perl is used by a older version of Perl.  
Has anyone seen anything like this before trying to install Bioperl 
C-extensions? Is there something missing? Or are these completely 
incompatible?

*THIS IS WHAT I DID TO GET THIS ERROR*

*# cd bioperl-ext-1.5.1/
# cd Bio/Ext/ Align*
*# ls*
Align.bs  Align.o   Align.xs  blosum45.mat  blosum62.bla  CVS    
md_20.mat    MYMETA.yml  test.pl
Align.c   Align.pm  blib      blosum50.mat  blosum62.mat  libs  
Makefile.PL  MYMETA.json  pm_to_blib  typemap
*# perl Makefile.PL *
Writing Makefile for Bio::Ext::Align
Writing MYMETA.yml and MYMETA.json
*# make*
.
.
.
/usr/bin/ld: libs/libsw.a(aln.o): relocation R_X86_64_32 against `.rodata' 
can not be used when making a shared object; recompile with -fPIC
libs/libsw.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
make: *** [blib/arch/auto/Bio/Ext/Align/Align.so] Error 1


So I made this change to Makefile.PL  "   'MYEXTLIB'  => '\'-fPIC 
libs/libsw$(LIB_EXT)\'',"

*# make*
.
.
.
*[ I GET NO ERRORS]*
*# ls*
Align.bs  Align.o   Align.xs  blosum45.mat  blosum62.bla  CVS   
Makefile     md_20.mat    MYMETA.yml  test.pl
Align.c   Align.pm  blib      blosum50.mat  blosum62.mat  libs  
Makefile.PL  MYMETA.json  pm_to_blib  typemap
*# perl test.pl*
1..9
# Running under perl version 5.010001 for linux
# Current time local: Wed Jul  3 14:39:17 2013
# Current time GMT:   Wed Jul  3 18:39:17 2013
# Using Test.pm version 1.25_02
ok 1
perl: symbol lookup error: 
/usr/local/lib64/perl5/auto/Bio/Ext/Align/Align.so: undefined symbol: 
bp_sw_change_max_BaseMatrix_kbytes




More information about the Bioperl-l mailing list