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

Build may fail in document because of version of jinja2. #1906

Open Shuhei-YOSHIDA opened 1 year ago

Shuhei-YOSHIDA commented 1 year ago

problem

Building of cartographer may fail when docs is processed.

FAILED: docs/CMakeFiles/build_doc
cd /tmp/cart_ws/build_isolated/cartographer/install/docs && /usr/bin/sphinx-build -b html /tmp/cart_ws/src/cartographer/docs/source /tmp/cart_ws/build_isolated/cartographer/install/docs/html
Running Sphinx v1.8.5

Extension error:
Could not import extension sphinx.builders.latex (exception: cannot import name 'contextfunction' from 'jinja2' (/usr/local/lib/python3.8/dist-packages/jinja2/__init__.py))
ninja: build stopped: subcommand failed.
<== Failed to process package 'cartographer':
  Command '['ninja', '-j8', '-l8']' returned non-zero exit status 1.

environment

solution

From jinja2 v3.1.0, a method jinaj2.contextfunciton was removed. You will success the build if you downgrade jinja2 to v3.0.x such as

sudo pip3 install jinja2==3.0.3
Printeger commented 1 year ago

nice