cartographer-project / cartographer

Cartographer is a system that provides real-time simultaneous localization and mapping (SLAM) in 2D and 3D across multiple platforms and sensor configurations.
Apache License 2.0
7.03k stars 2.24k forks source link

Investigate and fix issues compiling Cartographer with gRPC support. #1894

Open wohe opened 1 year ago

wohe commented 1 year ago

TL;DR: Best approach could be to target Ubuntu 22.04, install the deb package libgrpc++-dev and fix further build issues.

Right now Dockerfile.bionic.grpc fails when running cartographer/scripts/install_grpc.sh with output like this:

make
/bin/sh: 0: Illegal option -t
/bin/sh: 0: Illegal option -t
/bin/sh: 0: Illegal option -t
/bin/sh: 0: Illegal option -g
/bin/sh: 0: Illegal option -g

Using newer versions of Ubuntu or gRPC produces the same issue it seems. But since Ubuntu 22.04 ships with a package for gRPC, we might be able to use this instead, with no need to look into build issues of gRPC.

Using this approach still does not unbreak the full Cartographer build, but now fails building async_grpc which is part of Cartographer and has linker errors for its tests, but these issues seem unrelated to gRPC.