Fields2Cover / Fields2Cover

Robust and efficient coverage paths for autonomous agricultural vehicles. A modular and extensible Coverage Path Planning library
https://fields2cover.github.io/
BSD 3-Clause "New" or "Revised" License
456 stars 96 forks source link

Fix package installation for ros2 #156

Closed aosmw closed 2 weeks ago

aosmw commented 1 month ago

This is not yet ready but might be worth more eyes.

I install the ortools into opt/f2c_ortools I tweak the fields2coverConfig.cmake to find it.

You may not want the change I did to pull spline.h into the repository rather than use it through FetchContent.
It does some packaging stuff that I don't think is correct. It is a header only library.

The python/swig setup is needs help to find the ortools libraries.

export LD_LIBRARY_PATH=/opt/ros/rolling/opt/f2c_ortools/lib
$python3
Python 3.10.12 (main, Nov 20 2023, 15:14:05) [GCC 11.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import fields2cover
Gonzalo-Mier commented 1 month ago

I was actually planning to remove the spline library and use https://github.com/SplineLib/SplineLib instead if any.

aosmw commented 1 month ago

Requires https://github.com/Fields2Cover/ortools_vendor/pull/3 to be merged and bloom released.

aosmw commented 4 weeks ago

https://github.com/Fields2Cover/ortools_vendor/pull/3 got merged but https://build.ros2.org has been down since 8th June 2024 1:37pm so there is no package of ortools_vendor to allow the next step.

image

Gonzalo-Mier commented 4 weeks ago

It back on. You can see its progress on https://build.ros2.org/job/Rbin_uN64__ortools_vendor__ubuntu_noble_amd64__binary/44/console

Gonzalo-Mier commented 2 weeks ago

Thank you really much for the PR. I'm not completely sure how easy is for non-ROS-users to install F2C now, mainly due to ortools_vendors.