C++ ABI is PITA indeed, but exposing a C API for external linking is totally possible and is being actively used. Various cases of static linking (or header-only files) do indeed exist, but no sane C++ project (I'm not sure one can call ROS that without reservations) uses nearly as many static dependencies as typical Rust one does.
> Also, that's really only true of a small number of Linux and BSD flavors.
This is true on all major Linux distributions.
> Applications shipped on Windows, macOS, Android, iOS
If we are talking about security closed-source walled gardens are out of consideration right?
> or any of the Linux "application bundle" systems like the Steam runtime, Docker, FlatPak
This is sad indeed. Docker used right is just a distro inside a distro though, so anything that applies to distros applies here too.