-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add FLANN 1.9.1 #897
Add FLANN 1.9.1 #897
Conversation
Some configurations of 'flann/1.9.1' failed in build 1 (
|
Some configurations of 'flann/1.9.1' failed in build 2 (
|
All green in build 3 (
|
All green in build 4 (
|
int main() | ||
{ | ||
flann::Matrix<float> dataset; | ||
flann::Matrix<float> query; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
These use default constructors of templated classes.
So no code from the packaged library is called and executed.
Maybe the examples at https://github.com/mariusmuja/flann/tree/master/examples are useful?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
They load datasets, which seemed like something you don't always want to ship with your packages because it's an additional 10Mo. Now if it isn't a problem I'm definitely adding that.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
10MiB is a bit too much, I'm afraid.
What could be done is skip the load, or create a dummy dataset in the same format as the example.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will try to come up with something when I find some time, maybe tomorrow.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Each folder can consume only 256KB IIRC
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
the point is just to verify example compiles and links correctly.
so, an actual example isn't needed. it should be enough to just call some API function (e.g. flann_get_distance_type, or any other you prefer). you may also call the function that will fail, it's okay (it just shouldn't crash or hang at least).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Apparently only the C bindings allow to test whether linking works easily since flann_cpp.cpp
only includes flann.hpp
. Therefore I had the recipe build the C bindings along with the rest, I guess that it's pretty harmless to have them too.
We have flann and pcl recipes - through we used the FLANN master as we needed c++17 support, which in turn introduced an LZ4 dependency, so we also added flann-lib/flann#400 to the package. Feel free to email me if you run into any issues. |
Thanks for proposing. We are using a stripped-down version of the FLANN recipe here which seems enough for PCL but considering that there haven't been official releases since 2016 it might be worth introducing date-based releases. I don't even know whether the project is still actively maintained anymore. |
All green in build 5 (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
call some API in test package pls (see comments)
Some configurations of 'flann/1.9.1' failed in build 6 (
|
Some configurations of 'flann/1.9.1' failed in build 7 (
|
Is there a way to generically handle OpenMP in Conan? |
All green in build 8 (
|
All green in build 9 (
|
@planetmarshall Feel free to improve the recipe in any way, I only got a very basic recipe in. |
Specify library name and version: flann/1.9.1
I had to package the library to build PCL, and it is notably mentioned in #621. The example to make sure it finds the includes and links correctly is lacking a bit of substance but I couldn't find examples working without loading a whole dataset.
conan-center hook activated.