samtools / htslib

C library for high-throughput sequencing data formats
Other
784 stars 447 forks source link

Tabix failed on FTP file #1684

Closed stunme closed 8 months ago

stunme commented 9 months ago

Environment: windows 11 wsl2 + ubuntu 22.04 samtools, htslib 1.18

Running tabix -fh ftp://ngs.sanger.ac.uk/production/ag1000g/phase1/preview/ag1000g.AC.phase1.AR1.vcf.gz 3L:1-200000 |bgzip -c > centro.vcf.gz

get a error: [E::hts_open_format] Failed to open file "ftp://ngs.sanger.ac.uk/production/ag1000g/phase1/preview/ag1000g.AC.phase1.AR1.vcf.gz" : Protocol not supported Could not open "ftp://ngs.sanger.ac.uk/production/ag1000g/phase1/preview/ag1000g.AC.phase1.AR1.vcf.gz": Protocol not supported

But, wget the file and tbi file wget ftp://ngs.sanger.ac.uk/production/ag1000g/phase1/preview/ag1000g.AC.phase1.AR1.vcf.gz wget ftp://ngs.sanger.ac.uk/production/ag1000g/phase1/preview/ag1000g.AC.phase1.AR1.vcf.gz.tbi

and then ​tabix -fh ag1000g.AC.phase1.AR1.vcf.gz 2:39967768-39967768

it works normal.

What's wrong i have made to tabix with the remote file?

jkbonfield commented 9 months ago

"Protocol not supported" ususally means htslib was built without libcurl. While this is possible to do, it generally causes more confusion downstream such as this, so it's best to get it building complete.

If you built it yourself, install (or get installed) the necessary dependencies before running ./configure. See the INSTALL notes for details. If you're using a prebuilt binary from someone else, try another source of prebuilt binaries (eg conda) or build from source instead.

Also, as you said you have samtools as well as htslib built, you can do samtools --version which should report how the package was built.