Building the OSRM in Debian Bullseye (the latest stable one) fails with the "use of deleted function" error. You can see it with the Dockerfile in this repo. Same with Ubuntu 22.04. But OSRM builds with Ubuntu 20.04 — although it uses much more memory for processing data for some reason.
#9 78.05 /src/third_party/libosmium/include/osmium/osm/entity.hpp: In instantiation of 'TSubitem& osmium::detail::subitem_of_type(TIter, const TIter&) [with TSubitem = const osmium::TagList; TIter = osmium::memory::CollectionIterator<const osmium::memory::Item>]':
#9 78.05 /src/third_party/libosmium/include/osmium/osm/object.hpp:333:83: required from here
#9 78.05 /src/third_party/libosmium/include/osmium/osm/entity.hpp:54:29: error: use of deleted function 'osmium::memory::Collection<osmium::Tag, osmium::item_type::tag_list>::Collection(osmium::memory::Collection<osmium::Tag, osmium::item_type::tag_list>&&)'
#9 78.05 54 | static TSubitem subitem{};
#9 78.05 | ^~~~~~~
#9 78.05 In file included from /src/third_party/libosmium/include/osmium/osm/relation.hpp:36,
#9 78.05 from /src/include/extractor/extraction_relation.hpp:6,
#9 78.05 from /src/src/extractor/extractor.cpp:8:
#9 78.05 /src/third_party/libosmium/include/osmium/memory/collection.hpp:117:15: note: 'osmium::memory::Collection<osmium::Tag, osmium::item_type::tag_list>::Collection(osmium::memory::Collection<osmium::Tag, osmium::item_type::tag_list>&&)' is implicitly deleted because the default definition would be ill-formed:
#9 78.05 117 | class Collection : public Item {
#9 78.05 | ^~~~~~~~~~
#9 78.05 /src/third_party/libosmium/include/osmium/memory/collection.hpp:117:15: error: use of deleted function 'osmium::memory::Item::Item(osmium::memory::Item&&)'
#9 78.05 In file included from /src/third_party/libosmium/include/osmium/memory/buffer.hpp:36,
#9 78.05 from /src/include/extractor/scripting_environment.hpp:9,
#9 78.05 from /src/include/extractor/graph_compressor.hpp:4,
#9 78.05 from /src/include/extractor/extractor.hpp:34,
#9 78.05 from /src/src/extractor/extractor.cpp:1:
#9 78.05 /src/third_party/libosmium/include/osmium/memory/item.hpp:146:13: note: declared here
#9 78.05 146 | Item(Item&&) = delete;
#9 78.05 | ^~~~
#9 78.05 In file included from /src/third_party/libosmium/include/osmium/memory/buffer.hpp:38,
#9 78.05 from /src/include/extractor/scripting_environment.hpp:9,
#9 78.05 from /src/include/extractor/graph_compressor.hpp:4,
#9 78.05 from /src/include/extractor/extractor.hpp:34,
#9 78.05 from /src/src/extractor/extractor.cpp:1:
#9 78.05 /src/third_party/libosmium/include/osmium/osm/entity.hpp: In instantiation of 'TSubitem& osmium::detail::subitem_of_type(TIter, const TIter&) [with TSubitem = osmium::RelationMemberList; TIter = osmium::memory::CollectionIterator<osmium::memory::Item>]':
#9 78.05 /src/third_party/libosmium/include/osmium/osm/relation.hpp:188:86: required from here
#9 78.05 /src/third_party/libosmium/include/osmium/osm/entity.hpp:54:29: error: use of deleted function 'osmium::memory::Collection<osmium::RelationMember, osmium::item_type::relation_member_list>::Collection(osmium::memory::Collection<osmium::RelationMember, osmium::item_type::relation_member_list>&&)'
#9 78.05 54 | static TSubitem subitem{};
#9 78.05 | ^~~~~~~
#9 78.05 In file included from /src/third_party/libosmium/include/osmium/osm/relation.hpp:36,
#9 78.05 from /src/include/extractor/extraction_relation.hpp:6,
#9 78.05 from /src/src/extractor/extractor.cpp:8:
#9 78.05 /src/third_party/libosmium/include/osmium/memory/collection.hpp:117:15: note: 'osmium::memory::Collection<osmium::RelationMember, osmium::item_type::relation_member_list>::Collection(osmium::memory::Collection<osmium::RelationMember, osmium::item_type::relation_member_list>&&)' is implicitly deleted because the default definition would be ill-formed:
#9 78.05 117 | class Collection : public Item {
#9 78.05 | ^~~~~~~~~~
Building the OSRM in Debian Bullseye (the latest stable one) fails with the "use of deleted function" error. You can see it with the Dockerfile in this repo. Same with Ubuntu 22.04. But OSRM builds with Ubuntu 20.04 — although it uses much more memory for processing data for some reason.
Bisected it to #6279.
Looks like it's caused by this gcc bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98642