Skip to content
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

eigenpy version set to 0.0.0 while forgetting --recursive option #405

Closed
olivier-stasse opened this issue Nov 22, 2023 · 4 comments
Closed

Comments

@olivier-stasse
Copy link
Member

olivier-stasse commented Nov 22, 2023

Symptoms

Pinocchio not compiling generating a mistake stating that eigenpy does not have the proper version.
The system detects a 0.0.0 version for eigenpy.

Steps to reproduce the bug

On a 22.04 LTS :

cd /tmp
mkdir -p /tmp/test_ws/src
cd /tmp/test_ws/src
git clone https://github.com/stack-of-tasks/eigenpy.git
cd ..
colcon build --merge-install --packages-select eigenpy
cd src
git clone https://github.com/stack-of-tasks/pinocchio.git --recursive
cd ..
colcon build --merge-install --packages-select pinocchio

Output:

Starting >>> pinocchio
--- stderr: pinocchio
CMake Error at cmake/package-config.cmake:110 (find_package):
  Could not find a configuration file for package "eigenpy" that is
  compatible with requested version "2.7.10".

  The following configuration files were considered but not accepted:

    /tmp/test_ws/install/lib/cmake/eigenpy/eigenpyConfig.cmake, version: 0.0.0

Call Stack (most recent call first):
  CMakeLists.txt:167 (ADD_PROJECT_DEPENDENCY)


---
Failed   <<< pinocchio [4.45s, exited with code 1]

Of course putting the recursive flag when cloning eigenpy is fixing the matter. So there is no urgency in this matter.

Unfortunately it means that the lines

message(STATUS "JRL cmakemodules not found. Let's fetch it.")
-
FetchContent_GetProperties("jrl-cmakemodules" SOURCE_DIR JRL_CMAKE_MODULES)

are not working properly.

To be honest, I would prefer the error in

FATAL_ERROR

I guess that you did it for a good reason, unfortunately i did not have time to investigate why the former lines are not working properly.

@olivier-stasse
Copy link
Member Author

and thanks for the amazing work !

This issue filling is mostly to document this unfortunate behavior and saving time for other users.

@nim65s
Copy link
Contributor

nim65s commented Nov 22, 2023

Closing in favor of jrl-umi3218/jrl-cmakemodules#640

If this is not enough, I'll reopen.

@olivier-stasse
Copy link
Member Author

Thanks for taking care of this @nim65s

@nim65s
Copy link
Contributor

nim65s commented Nov 22, 2023

I can confirm that following the merge of jrl-umi3218/jrl-cmakemodules#641, I can no longer reproduce this issue with this Dockerfile:

FROM ros:rolling


RUN --mount=type=cache,sharing=locked,target=/var/cache/apt \
    --mount=type=cache,sharing=locked,target=/var/lib/apt \
    apt-get update -y && DEBIAN_FRONTEND=noninteractive apt-get install -qqy --no-install-recommends \
    libboost-all-dev \
    libeigen3-dev \
    liburdfdom-dev \
    libtinyxml-dev \
    python-is-python3

WORKDIR /tmp/test_ws/src
RUN git clone https://github.com/stack-of-tasks/eigenpy

WORKDIR /tmp/test_ws
RUN colcon build --merge-install --packages-select eigenpy

WORKDIR /tmp/test_ws/src
RUN git clone --recursive https://github.com/stack-of-tasks/pinocchio

WORKDIR /tmp/test_ws
ENV MAKEFLAGS="-j 4"
RUN colcon build --merge-install --packages-select pinocchio

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

No branches or pull requests

2 participants