- changed status to resolved
Rot3 failures
Issue #364
resolved
I'm including some modules of GTSAM v4.0.0 in another repository, but I'm unable to build anything that under-the-hood uses Rot3
. That is, anywhere a constructor tries to initialize Rot3
I get an error like,
In function `gtsam::Rot3::identity()':
my_test.cpp:(.text._ZN5gtsam4Rot38identityEv[_ZN5gtsam4Rot38identityEv]+0x14): undefined reference to `gtsam::Rot3::Rot3()'
Other Rot3
initializations fail too:
In function `gtsam::Rot3::Quaternion(double, double, double, double)':
my_test.cpp:(.text._ZN5gtsam4Rot310QuaternionEdddd[_ZN5gtsam4Rot310QuaternionEdddd]+0x5d): undefined reference to `gtsam::Rot3::Rot3(Eigen::Quaternion<double, 2> const&)'
I can include the header gtsam/geometry/Rot3.h
, but this does not help, nor can I init a Rot3
object.
Running a GTSAM test that uses Rot3
, e.g. testGaussianFactorGraphB
, passes.
I'm on Ubuntu 16.04, with the following build settings:
-- ================ Configuration Options ======================
-- CMAKE_CXX_COMPILER_ID type : GNU
-- CMAKE_CXX_COMPILER_VERSION : 5.4.0
-- Build flags
-- Build Tests : Enabled
-- Build examples with 'make all' : Enabled
-- Build timing scripts with 'make all': Disabled
-- Build static GTSAM library instead of shared: Disabled
-- Put build type in library name : Enabled
-- Build libgtsam_unstable : Enabled
-- Build type : Release
-- C compilation flags : -std=c11 -Wall -O3 -DNDEBUG -O3 -DNDEBUG
-- C++ compilation flags : -std=c++11 -Wall -O3 -DNDEBUG -O3 -DNDEBUG
-- Use System Eigen : No
-- Use Intel TBB : Yes
-- Eigen will use MKL : MKL not found
-- Eigen will use MKL and OpenMP : OpenMP found but MKL not found
-- Default allocator : TBB
-- Packaging flags
-- CPack Source Generator : TGZ
-- CPack Generator : TGZ
-- GTSAM flags
-- Quaternions as default Rot3 : Disabled
-- Runtime consistency checking : Disabled
-- Rot3 retract is full ExpMap : Disabled
-- Pose3 retract is full ExpMap : Disabled
-- Deprecated in GTSAM 4 allowed : Enabled
-- Point3 is typedef to Vector3 : Disabled
-- Metis-based Nested Dissection : Enabled
-- Use tangent-space preintegration: Enabled
-- MATLAB toolbox flags
-- Install matlab toolbox : Disabled
-- Build Wrap : Enabled
-- Python module flags
-- Build python module : Disabled
-- ===============================================================
Comments (1)
-
Account Deleted reporter - Log in to comment
Issue resolved! Useful info here: https://stackoverflow.com/questions/44395859/how-to-use-the-c-library-gtsam-in-my-project-package
FWIW I think a roadblock to using this library is integrating it with existing ROS (i.e. catkin) systems. A simple CMakeLists.txt setup guide for catkin build systems would be super helpful.