Ensembl / Bio-DB-HTS

Git repo for Bio::DB::HTS module on CPAN, providing Perl links into HTSlib
Apache License 2.0
24 stars 16 forks source link

lzma.h file missing on Mac OSx High Sierra v.10.13.6 #79

Open SabriJamal opened 6 years ago

SabriJamal commented 6 years ago

Hi,

I was installing Bio-DB-HTS package and run into an issue with the lzma.h header file. I apparently have the LZMA library installed but don't have the lzma.h header file. I installed the XZ library in order to get the lzma.h header file although then it got saved in...

/usr/local/Cellar/xz/5.2.4/include/lzma.h

I got around this by adding the following in bold to a line in the INSTALL.pl file

-e '/usr/include/lzma.h' || '/usr/local/Cellar/xz/5.2.4/include/lzma.h' or die <<END;

I made a post in stackoverflow regarding issues installing Bio:Perl where another user mentioned that on his Mac OSx High Sierra he had the lzma.h file located in /usr/local/include and not as required, /usr/include (see post below)

https://stackoverflow.com/questions/52468476/issues-installing-perl-module-bioperl?noredirect=1#comment91917414_52468476

I have seen quite a few post with similar issue but concerning different problems, all relating to the missing lzma.h header file.

Kind regards Sabri

jmarshall commented 6 years ago

Since version 1.7, HTSlib contains a workaround for macOS having liblzma.dylib but no lzma.h. (See samtools/htslib@78dbcce8616228c5b4a5ac8a141386995e0747ea.)

So this is really a deficiency in Bio-DB-HTS's INSTALL.pl: if it ran HTSlib's configure script and removed this test (the configure script checks more carefully for the same things) then it would build on macOS without needing extra XZ libraries to be installed.