samtools / bcftools

This is the official development repository for BCFtools. See installation instructions and other documentation here http://samtools.github.io/bcftools/howtos/install.html
http://samtools.github.io/bcftools/
Other
663 stars 240 forks source link

Error with prune plugin "prune.so: undefined symbol: vcfbuf_ld" #2253

Closed KevinABird closed 3 weeks ago

KevinABird commented 1 month ago

I'm running bcftools 1.10.2-34-g1a12af0 and htslib 1.10.2-58-g2e36fa6 on Ubuntu 20.04, which I installed from github following the instructions on the website. I also successfully set the environmental variable to point to the plugins directory and can see that there are prune.so and prune.c files there. However, when I try to use the prune plugin I get the error:

bcftools +prune -vv
plugin directory /home/bird/bcftools/plugins .. ok
/home/bird/bcftools/plugins/prune.so:
    dlopen   .. /home/bird/bcftools/plugins/prune.so: undefined symbol: vcfbuf_ld
prune:
    dlopen   .. prune: cannot open shared object file: No such file or directory

The bcftools plugin "prune" was not found or is not functional in
    BCFTOOLS_PLUGINS="/home/bird/bcftools/plugins".

Whatever is going on doesn't appear to affect all plugins, "bcftools plugins -l" shows several are loaded and they appear operational when I run "bcftools plugin -lvv"

I'm hoping you can help me figure out what's going wrong.

Thank you!

pd3 commented 3 weeks ago

The problem seems to come from mixing different versions of the plugins and bcftools binary. The function vcfbuf_ld() was added in 1.11, so the 1.10 binary does not contain it.

Anyway, is there a good reason why to use 1.10? We are at 1.20. I strongly encourage to use the latest.