flann-lib / flann

Fast Library for Approximate Nearest Neighbors
http://people.cs.ubc.ca/~mariusm/flann
Other
2.21k stars 646 forks source link

How to build Flann on windows? #508

Open lukkio88 opened 1 year ago

lukkio88 commented 1 year ago

Hi,

I have a repo and I am thinking of using Flann (C++), windows. I would like to add Flann as a submodule of git and then build it. However I am realizing there's no building instructions on the Flann Repo's readme.

Is it possible to get some instructions on how to build it on windows? Including dependencies?

Thank you.

hai4john commented 1 year ago

make a dir on flann root, cd the dir cmake .. -G "Visual Studio 17 2022" -A x64

dariomangoni commented 9 months ago

Oh really? Then I should have probably missed something...

I don't know if pkg-config is strictly required or only the lz4 module is.

If the first, then I can tell that in my (quite clean) Win installation I personally miss pkg-config (isn't this an almost Linux specific tool?) and its dependencies, namely glib and gettext (a potential solution could be this). I need in this case to set PATH to correctly get the DLLs.

In any case, I would still need to get liblz4 (from here maybe?) since it seems that the pkg-config is missing lz4 thus causing pkg_check_modules(LZ4 REQUIRED liblz4) to fail. At this point I strictly need to comment out the line pkg_check_modules(LZ4 REQUIRED liblz4) and trying to manually set LZ4_INCLUDE_DIRS and LZ4_LINK_LIBRARIES. I tried to set the latter to point to the static library provided by lz4 but some symbol is missing so I stopped (___chkstk_ms referenced in function LZ4_compress_fast).

At this point I can compile the targets: flann_cpp, flann_cpp_s, falnn_cuda, flan_cuda_s, flann_s And I'm failing to build: examples, flann, flann_example_c

Am I totally out of my mind? Did I miss something that could lead to such a burden?

biggiantpigeon commented 1 month ago

Finally work with me with v1.9.1 and VS2022, follow suggestion from #518