-
Notifications
You must be signed in to change notification settings - Fork 48
Add Eigen3 link library in WholeBodyControllers component #81
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
Conversation
Fix Eigen include error
|
@GiulioRomualdi @S-Dafarra for context, @valentino-razza need this as it was using an old version of osqp-eigen that did not included gbionics/osqp-eigen#62 . |
Ok, clear. In any case, it does no harm. So we may merge this anyway. @GiulioRomualdi what do you think? |
|
|
|
OK let me understand: |
That is correct. As when including file you should IWYU (include what you use), when linking you should always LWYU (link waht you use), without ever relying on transitive linking, as that can change in the future. |
I agree Before merging I ask @valentino-razza to update the changelog adding a line in the |
|
Thanks for the fix @valentino-razza . I was experiencing the same problem on the component Maybe on your environment, the issue was hidden because you could build previously with the workaround and the install folder keeps old objects. In any case it would make sense to propagate the fix to In addition, as per gbionics/whole-body-estimators#68, shouldn't we add What about the keywords |
|
@GiulioRomualdi , I saw that the ongoing fix is on top of |
|
Sorry @GiulioRomualdi , disregard this comment, I was missing some information.
@valentino-razza , I just saw your comments in the "other project", and that this is already in v0.4.1. @GiulioRomualdi, my only remaining question is about this:
|
They are supposed to be there, aren't they? In any case, they are required. |
|
Side noteIt's probably not a big deal in this case, but for limiting the propagation of useless dependencies, it's recommended to use PRIVATE when it applies right? My only knowledge on the topic comes from: As per what is explained in https://cmake.org/pipermail/cmake/2016-May/063400.html, I was expecting the entries in |
|
Sorry, I did not saw the code. If you have |
Yes, typically that is the case, but in this case as Eigen3 is already included in public headers via the OsqpEigen.h use, I think it is fine to just use it as
If you do: the correct include directories that are set for |
Co-authored-by: Giulio Romualdi <giulio.romualdi@gmail.com>
|
I've committed changes to CHANGELOG.md |
Fix Eigen include error:
cc @CarlottaSartore