-
Notifications
You must be signed in to change notification settings - Fork 406
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
The ${libdir} variable in pinocchio.pc file wrong when built with catkin #1524
Comments
additionally, |
Hi @nielsvd The reason is that we are applying a patch to change the install directory (and amended that patch for EigenPy recently in response to a user request building for Nix). I'll verify the patches for eigenpy and pinocchio and will check that it's consistent -- this may not be immediate though. Will using CMake (targets) work in the meantime? |
@wxmerkt , thanks for the response. I'll have a look into using a CMake target instead. Currently, I'm actually patching the pkg-config file manually. In the meantime there is a bit of extra insight gained. It seems that the problem starts to appear when building Pinocchio with the Python interface. If built without, the PkgConfig file looks correct. To correct an earlier statement, the problem does not seem to limit itself to builds with Catkin, also a manual cmake build leads to a wrong |
I found the source of the problem (from which Possible solutions:
|
@wxmerkt Any update on this? |
I am on annual leave right now and have not investigated further -- the above update that it also affects non-catkin builds makes me think the problem is in jrl-cmakemodules and outside of the patch applied for the ROS buildfarm?
Based on this, happy to remove the issue assignment or look at it when I'm back at the end of the month. |
No problem, we can wait until you're back. Enjoy your holidays! |
@wxmerkt Would you have time to fix this issue? |
Apologies for the slow action on this - and thank you very much @nielsvd for the excellent pointers to the fix. I prepared a fix in jrl-umi3218/jrl-cmakemodules#499 and tested it locally with separate installation workspaces for eigenpy (as the upstream project) and pinocchio (as the downstream project). Using the amended CMake module in EigenPy fixes the generation of the PkgConfig file in Pinocchio. |
ROS releases for EigenPy are out (pending merge & sync): |
Nice to hear that. I've merged the new cmake feature in #1542. |
Hi. I am facing a probably connected issue. The pinocchio.pc file generated for my install location
|
Hi @grizzi, |
Hi, this is the output of the previous command:
I basically installed octomap and hpp-fcl as robotpkgs and then installed pinocchio from source as I needed a build with collision support. |
hpp-fcl v1.7.5 is older than the fix provided in jrl-umi3218/jrl-cmakemodules#499 ; please upgrade it to 1.7.8, and try again to configure and build pinocchio. For this, |
thanks! I can confirm that with the newest version of hpp-fcl the problem is gone :) |
Similar things happen to me. But it's the include directory, not the library directory.
However, when using Now I have to manually reset |
Hi @gywhitel, |
@gywhitel Could you switch to using CMake? |
I walked around this problem by a symbolic link. |
instead of hardcoding "../..". Specially useful for ROS which sets LIBDIR to "lib/x86_64-linux-gnu" fix: coal-library/coal#392 fix: stack-of-tasks/pinocchio#1524 (2023 comments)
Since recently, the
pinocchio.pc
file generated in a Pinocchio build with catkin (ros noetic
) contains an error. This also holds for the package that is distributed by the ros package repository. I can confirm that the same error does not occur when building Pinocchio manually without catkin.It seems that
CMAKE_INSTALL_FULL_LIBDIR
is somehow set to be/opt/ros/noetic/lib/x86_64-linux-gnu
, because of that thelibdir
variable inpinocchio.pc
also ends up to be this path; regardless of where pinocchio is being installed (e.g., local prefix in local workspace). Since thepinocchio
library is actually installed to thelib
directory and notlib/x86_64-linux-gnu
, linker errors arise.Although the root cause may not actually be in Pinocchio, I wanted to make you aware of this problem such that you may be able to construct a workaround and have a working version of Pinocchio distributed for ROS (Noetic, not test for other versions).
The text was updated successfully, but these errors were encountered: