Skip to content

gtsam 4.3.0 fails to build on ROS2 build farm for arm64 #2278

@jlblancoc

Description

@jlblancoc

Description

Hi friends,
I don't have bandwidth to fix this myself right now, so want to at least leave it posted here:

[ 42%] Building CXX object gtsam/CMakeFiles/gtsam.dir/discrete/DecisionTreeFactor.cpp.o
13:31:09 cd /tmp/binarydeb/ros-kilted-gtsam-4.3.0/.obj-aarch64-linux-gnu/gtsam && ccache /usr/lib/ccache/c++ -Dgtsam_EXPORTS -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0 -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0/.obj-aarch64-linux-gnu -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0/CppUnitLite -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/metis/include -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/metis/libmetis -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/metis/GKlib -I/tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/cephes -isystem /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/SuiteSparse_config -isystem /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/Spectra -isystem /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/3rdparty/CCOLAMD/Include -isystem /usr/include/eigen3 -g -O2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -ffile-prefix-map=/tmp/binarydeb/ros-kilted-gtsam-4.3.0=. -flto=auto -ffat-lto-objects -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -mbranch-protection=standard -fdebug-prefix-map=/tmp/binarydeb/ros-kilted-gtsam-4.3.0=/usr/src/ros-kilted-gtsam-4.3.0-2noble.20251008.111728 -DNDEBUG -Wdate-time -D_FORTIFY_SOURCE=3 -std=c++17 -fPIC -Werror -Wall -Wpedantic -Wextra -Wno-unused-parameter -Wreturn-local-addr -Wreturn-type -Wformat -Werror=format-security -Wsuggest-override -Wno-unused-local-typedefs -MD -MT gtsam/CMakeFiles/gtsam.dir/discrete/DecisionTreeFactor.cpp.o -MF CMakeFiles/gtsam.dir/discrete/DecisionTreeFactor.cpp.o.d -o CMakeFiles/gtsam.dir/discrete/DecisionTreeFactor.cpp.o -c /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DecisionTreeFactor.cpp
13:31:20 In file included from /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DecisionTreeFactor.cpp:21:
13:31:20 /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DecisionTreeFactor.h:174:24: error: ‘virtual gtsam::DecisionTreeFactor gtsam::DecisionTreeFactor::operator*(const gtsam::DecisionTreeFactor&) const’ was hidden [-Werror=overloaded-virtual=]
13:31:20   174 |     DecisionTreeFactor operator*(const DecisionTreeFactor& f) const override {
13:31:20       |                        ^~~~~~~~
13:31:20 In file included from /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DecisionTreeFactor.cpp:22:
13:31:20 /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DiscreteConditional.h:141:23: note:   by ‘gtsam::DiscreteConditional gtsam::DiscreteConditional::operator*(const gtsam::DiscreteConditional&) const’
13:31:20   141 |   DiscreteConditional operator*(const DiscreteConditional& other) const;
13:31:20       |                       ^~~~~~~~
13:31:20 /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DecisionTreeFactor.h:168:32: error: ‘virtual gtsam::DiscreteFactor::shared_ptr gtsam::DecisionTreeFactor::operator*(double) const’ was hidden [-Werror=overloaded-virtual=]
13:31:20   168 |     DiscreteFactor::shared_ptr operator*(double s) const override {
13:31:20       |                                ^~~~~~~~
13:31:20 /tmp/binarydeb/ros-kilted-gtsam-4.3.0/gtsam/discrete/DiscreteConditional.h:141:23: note:   by ‘gtsam::DiscreteConditional gtsam::DiscreteConditional::operator*(const gtsam::DiscreteConditional&) const’
13:31:20   141 |   DiscreteConditional operator*(const DiscreteConditional& other) const;
13:31:20       |                       ^~~~~~~~
13:31:20 cc1plus: all warnings being treated as errors
13:31:20 make[4]: Leaving directory '/tmp/binarydeb/ros-kilted-gtsam-4.3.0/.obj-aarch64-linux-gnu'
13:31:20 make[4]: *** [gtsam/CMakeFiles/gtsam.dir/build.make:1087: gtsam/CMakeFiles/gtsam.dir/discrete/DecisionTreeFactor.cpp.o] Error 1
13:31:20 make[3]: *** [CMakeFiles/Makefile2:3409: gtsam/CMakeFiles/gtsam.dir/all] Error 2
13:31:20 make[3]: Leaving directory '/tmp/binarydeb/ros-kilted-gtsam-4.3.0/.obj-aarch64-linux-gnu'
13:31:20 make[2]: Leaving directory '/tmp/binarydeb/ros-kilted-gtsam-4.3.0/.obj-aarch64-linux-gnu'
13:31:20 make[2]: *** [Makefile:169: all] Error 2

Steps to reproduce

  1. Build on arm64, with -Werror=overloaded-virtual=
  2. I'm not sure why this doesn't show up in amd64 (?).

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugBug report

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions