cmake doesn't look for htslib, so the build fails
Closed this issue · 7 comments
In file included from /usr/ports/biology/mashmap/work/MashMap-3.1.0/src/map/mash_map.cpp:16:
In file included from /usr/ports/biology/mashmap/work/MashMap-3.1.0/src/map/include/winSketch.hpp:39:
/usr/ports/biology/mashmap/work/MashMap-3.1.0/src/common/seqiter.hpp:8:10: fatal error: 'htslib/faidx.h' file not found
#include <htslib/faidx.h>
^~~~~~~~~~~~~~~~
1 warning and 1 error generated.
Hi @yurivict!
It appears you don't have the htslib include files anywhere on your system's include path. If you want to build with htslib, you'll need to install the headers somewhere on your system and/or add them to your include path.
Otherwise, I've created a new release of MashMap (v3.1.1) that allows you to build without htslib by default. Please let me know if you have any questions!
-Bryce
cmake should look for all dependencies that are required during build.
Similar to what is required for libgsl, cmake will look for the header files of htslib in your compiler's include path.
Or do you mean that CMake should be throwing the error as opposed to the compiler?
htslib installs .pc file. cmake should use pkgconfig to find the htslib package.
@yurivict ahhh, I understand now I think. I appreciate the guidance! Let me know if the commit above addresses your issue.
Yes, it does.
Thank you.