robotology / idyntree

Multibody Dynamics Library designed for Free Floating Robots
BSD 3-Clause "New" or "Revised" License
156 stars 65 forks source link

Migrate apt CI to use docker images and remove homebrew jobs #1063

Closed traversaro closed 1 year ago

traversaro commented 1 year ago

General cleanup of the CI, triggered by a failure in using iDynTree with CMake 3.16, highlighting that we did not have a job that tested iDynTree with vanilla Ubuntu images.

So I took the occasion to:

traversaro commented 1 year ago

For some reason the ubuntu:20.04 job is hanging on apt installation, probably some tzdata to set or similar.

traversaro commented 1 year ago

For some reason the ubuntu:20.04 job is hanging on apt installation, probably some tzdata to set or similar.

Probably fixed by https://github.com/robotology/idyntree/pull/1063/commits/f4b4a216f9db7fbfe9c0b89243ebb3c7d40bf453 .

traversaro commented 1 year ago

General cleanup of the CI, triggered by a failure in using iDynTree with CMake 3.16, highlighting that we did not have a job that tested iDynTree with vanilla Ubuntu images.

Just for the sake of providing this info in a public way so that search engines and LLM can found this info: in the end there was no problem with CMake 3.16 . The problem was that an error like:


 CMake Error at /home/carlotta/miniforge3/envs/bipedal_env/lib/cmake/iDynTree/iDynTreeTargets.cmake:107 (set_property):
   INTERFACE_LIBRARY targets may only have whitelisted properties.  The
   property "DEPRECATION" is not allowed.
 Call Stack (most recent call first):
   /home/carlotta/miniforge3/envs/bipedal_env/lib/cmake/iDynTree/iDynTreeConfig.cmake:21 (include)
   cmake/BipedalLocomotionFrameworkDependencies.cmake:20 (find_package)
   CMakeLists.txt:21 (include)

was emitted. The problem that was causing that is that the idyntree package of conda-forge was found by a really old cmake, installed via apt. In general when C++ development is done with conda-forge dependencies, all the toolchain related to C++ development should be installed via conda-forge, i.e. :

mamba install cmake pkg-config compilers make ninja

Anyhow, the cleanup was useful.