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

depend only on libboost-coroutine(-dev) for v3.8 #769

Merged
merged 1 commit into from
Feb 13, 2024

Conversation

bi0ha2ard
Copy link

At least on Ubuntu, boost-all-dev depends on openmpi, which depends on a fortran compiler and gcc. This is quite heavy for Docker containers where only exec dependencies are really needed.

Rosdep now has entries for finer-grained boost dependencies, so using those, a lot fewer packages will be installed.

Rough numbers ontop of ros:iron-ros-core:

  • libboost-all-dev: ~600MB disk space
  • libboost-coroutine-dev: ~250MB disk space
  • libboost-coroutine1.74.0: <1MB

I'm not 100% sure how this interacts with the .deb packaging process, but even using

<depend>libboost-coroutine-dev</depend>

would be quite an improvement.

At least on Ubuntu, boost-all-dev depends on openmpi, which depends on a
fortran compiler and gcc. This is very heavy for Docker containers where
only exec dependencies are really needed.
@facontidavide
Copy link
Collaborator

I might be Ok with this, but honestly there are so many packages in ROS that use boost that I doubt it won't be installed anyway

@bi0ha2ard
Copy link
Author

In ROS 1 probably not, but in ROS 2 iron for us nav2_behavior_tree and therefore behaviortree_cpp is actually one of the few remaining ones.

@facontidavide facontidavide merged commit 95210b0 into BehaviorTree:v3.8 Feb 13, 2024
4 checks passed
@facontidavide
Copy link
Collaborator

Thanks

@bi0ha2ard bi0ha2ard deleted the fewer_boost_dependencies branch February 13, 2024 11:38
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.

None yet

2 participants