Ensembl / ensembl-vep

The Ensembl Variant Effect Predictor predicts the functional effects of genomic variants
https://www.ensembl.org/vep
Apache License 2.0
453 stars 152 forks source link

IntervalTree.c: loadable library and perl binaries are mismatched (got handshake key 0xdb00080, needed 0xeb00080) #1319

Closed kemin711 closed 1 year ago

kemin711 commented 1 year ago

I have seen similar but different post. in my case /usr/bin/perl version is 5.34 sudo perl INSTALL.pl --NO_UPDATE -a a WARNING: DBD::mysql module not found. VEP can only run in offline (--offline) mode without DBD::mysql installed

http://www.ensembl.org/info/docs/tools/vep/script/vep_download.html#requirements

Setting up directories

If this fails, try re-running with --NO_HTSLIB

ERRORS/WARNINGS FOUND IN PREREQUISITES. You may wish to install the versions of the modules indicated above before proceeding with this installation

Run 'Build installdeps' to install missing prerequisites.

Created MYMETA.yml and MYMETA.json Creating new 'Build' script for 'Bio-DB-HTS' version '2.11' Building Bio-DB-HTS x86_64-linux-gnu-gcc -I/home/kzhou/coding/ensembl-vep/htslib -I/usr/lib/x86_64-linux-gnu/perl/5.34/CORE -DVERSION="2.11" -DXS_VERSION="2.11" -fPIC -D_IOLIB=2 -D_FILE_OFFSET_BITS=64 -Wno-error -Wno-unused-result -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -o lib/Bio/DB/HTS.o lib/Bio/DB/HTS.c lib/Bio/DB/HTS.xs: In function ‘XS_BioDBHTSVCFHeader_fmt_text’: lib/Bio/DB/HTS.xs:1770:5: warning: ‘bcf_hdr_fmt_text’ is deprecated: use bcf_hdr_format() instead [-Wdeprecated-declarations] 1770 | RETVAL = newSVpv(bcf_hdr_fmt_text(header, is_bcf, &len), 0); | ^~ In file included from lib/Bio/DB/HTS.xs:59: /home/kzhou/coding/ensembl-vep/htslib/htslib/vcf.h:439:11: note: declared here 439 | char bcf_hdr_fmt_text(const bcf_hdr_t hdr, int is_bcf, int *len) | ^~~~ ExtUtils::Mkbootstrap::Mkbootstrap('blib/arch/auto/Bio/DB/HTS/HTS.bs') x86_64-linux-gnu-gcc -shared -L/usr/local/lib -fstack-protector-strong -o blib/arch/auto/Bio/DB/HTS/HTS.so lib/Bio/DB/HTS.o -L/home/kzhou/coding/ensembl-vep/htslib -Wl,-rpath,/home/kzhou/coding/ensembl-vep/htslib -lhts -lpthread -lz x86_64-linux-gnu-gcc -I/home/kzhou/coding/ensembl-vep/htslib -I/usr/lib/x86_64-linux-gnu/perl/5.34/CORE -DVERSION="2.11" -DXS_VERSION="2.11" -fPIC -D_IOLIB=2 -D_FILE_OFFSET_BITS=64 -Wno-error -Wno-unused-result -c -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fwrapv -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2 -g -o lib/Bio/DB/HTS/Faidx.o lib/Bio/DB/HTS/Faidx.c ExtUtils::Mkbootstrap::Mkbootstrap('blib/arch/auto/Bio/DB/HTS/Faidx/Faidx.bs') x86_64-linux-gnu-gcc -shared -L/usr/local/lib -fstack-protector-strong -o blib/arch/auto/Bio/DB/HTS/Faidx/Faidx.so lib/Bio/DB/HTS/Faidx.o -L/home/kzhou/coding/ensembl-vep/htslib -Wl,-rpath,/home/kzhou/coding/ensembl-vep/htslib -lhts -lpthread -lz

Downloading required Ensembl API files

Testing VEP installation ERROR: Testing VEP script failed with the following error IntervalTree.c: loadable library and perl binaries are mismatched (got handshake key 0xdb00080, needed 0xeb00080)

After I install the needed version package, still get the same error message. Need some help in deleting the conflicting library. Not sure where the old one is residing.

In my system, the c source code is part of star fusion: ./starfusion/plugins/Set-IntervalTree-0.01/IntervalTree.c Not sure that's source of the problem. Removing the above source file does not solve the problem. ./.local/share/.cpan/build/Set-IntervalTree-0.12-0 also removed this directory containing IntervalTree.c No effect. After removing all traces of IntervalTree.c from my system, unzip the distribution, and tried again. Still the same error message. Look like some loading issue. vep --help IntervalTree.c: loadable library and perl binaries are mismatched (got handshake key 0xdb00080, needed 0xeb00080)

perl -d vep --help

Loading DB routines from perl5db.pl version 1.60 Editor support available.

Enter h or 'h h' for help, or 'man perldebug' for more help.

IntervalTree.c: loadable library and perl binaries are mismatched (got handshake key 0xdb00080, needed 0xeb00080) Running under debugger, only have loaded on perl script.

kemin711 commented 1 year ago

sudo rm /usr/local/lib/site_perl/star/Set/IntervalTree.pm /usr/local/lib/site_perl/Set/IntervalTree.pm Above command removed the error message