Skip to content

Conversation

traversaro
Copy link
Member

@traversaro traversaro commented Oct 7, 2025

On the CMake side, there has always been a typo in the logic to link to Eigen3, but everything was working as EIGEN3_INCLUDE_DIR was a valid variable. As with Eigen3 5.0.0 is not exported anymore, fixing the typo is necessary to ensure that the library builds with Eigen3 5.0.0.

On the c++ side, there was a breaking change in how SVD is invoked, see https://gitlab.com/libeigen/eigen/-/merge_requests/826/ for more details.

xref: robotology/robotology-superbuild#1902
xref: robotology/robotology-superbuild#1903
xref: conda-forge/eigen-feedstock#47

@traversaro traversaro requested a review from xEnVrE October 7, 2025 22:14
@traversaro traversaro changed the title Fix typo in if related to Eigen3::Eigen target and bump version to 0.10.1 Fix compatibility with Eigen3 5.0.0 and bump version to 0.10.1 Oct 7, 2025
@traversaro traversaro requested a review from isorrentino October 7, 2025 22:21
@traversaro
Copy link
Member Author

@GiulioRomualdi as I guess you are more in contact with @xEnVrE do you think he is interested in checking this out, or we should merge and do a new release on our own?

@xEnVrE
Copy link
Collaborator

xEnVrE commented Oct 8, 2025

Hi @traversaro

If I got it correctly, this will just fix usage of the library for users adopting the newer Eigen. Should we have older projects, e.g. running in dockerized envs with older versions of Eigen, this will have no impact on them (both in terms of CMake and SVD usage). Is it right? Thanks

@traversaro
Copy link
Member Author

Hi @traversaro

If I got it correctly, this will just fix usage of the library for users adopting the newer Eigen. Should we have older projects, e.g. running in dockerized envs with older versions of Eigen, this will have no impact on them (both in terms of CMake and SVD usage). Is it right? Thanks

Happy to see you active. :D

Yes, that is correct. Users of older Eigen will just start linking to the Eigen3::Eigen, but that should be fine. Actually, that reminds me that there is another small thing to fix for that to work fine, i.e. adding Eigen3 to the DEPENDENCIES argument of install_basic_package_files, let me do that.

At the C++ level, the preprocessor logic ensures that users of older Eigen still use the old code.

@traversaro
Copy link
Member Author

let me do that.

Done in 4dc452e .

@xEnVrE
Copy link
Collaborator

xEnVrE commented Oct 8, 2025

Happy to see you active. :D

:D

Yes, that is correct. Users of older Eigen will just start linking to the Eigen3::Eigen, but that should be fine.

Fine with me then. Thanks for the clarification!

Not sure whether CI is still running. I guess it would be good to let the tests run. Thanks

@traversaro
Copy link
Member Author

Thanks @xEnVrE ! Just to understand, I guess then it is ok if I merge?

@xEnVrE
Copy link
Collaborator

xEnVrE commented Oct 8, 2025

Thanks @xEnVrE ! Just to understand, I guess then it is ok if I merge?

@traversaro if you feel the CI checks (which btw seems stuck) are not necessary, fine with me to proceed!

@traversaro traversaro merged commit 6807eee into master Oct 8, 2025
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants