Fixed noetic build (g2o error)

This commit is contained in:
matlabbe
2022-01-03 16:05:11 -05:00
parent 5194f40794
commit 145430cafd
2 changed files with 30 additions and 25 deletions
+20 -7
View File
@@ -433,16 +433,29 @@ IF(WITH_DC1394)
ENDIF(WITH_DC1394) ENDIF(WITH_DC1394)
IF(WITH_G2O) IF(WITH_G2O)
FIND_PACKAGE(g2o QUIET NO_MODULE) FIND_PACKAGE(g2o QUIET NO_MODULE)
IF(g2o_FOUND) IF(g2o_FOUND)
MESSAGE(STATUS "Found g2o (targets)") MESSAGE(STATUS "Found g2o (targets)")
SET(G2O_FOUND ${g2o_FOUND}) SET(G2O_FOUND ${g2o_FOUND})
SET(G2O_CPP11 1) get_target_property(G2O_INCLUDES g2o::core INTERFACE_INCLUDE_DIRECTORIES)
MESSAGE(STATUS "g2o include dir: ${G2O_INCLUDES}")
FIND_FILE(G2O_FACTORY_FILE g2o/core/factory.h
PATHS ${G2O_INCLUDES}
NO_DEFAULT_PATH)
FILE(READ ${G2O_FACTORY_FILE} TMPTXT)
STRING(FIND "${TMPTXT}" "shared_ptr" matchres)
IF(${matchres} EQUAL -1)
MESSAGE(STATUS "Old g2o factory version detected without shared ptr (factory file: ${G2O_FACTORY_FILE}).")
SET(G2O_CPP11 2)
ELSE()
MESSAGE(WARNING "Latest g2o factory version detected with shared ptr (factory file: ${G2O_FACTORY_FILE}).")
SET(G2O_CPP11 1)
ENDIF()
ELSE() ELSE()
FIND_PACKAGE(G2O QUIET) FIND_PACKAGE(G2O QUIET)
IF(G2O_FOUND) IF(G2O_FOUND)
MESSAGE(STATUS "Found g2o: ${G2O_INCLUDE_DIRS}") MESSAGE(STATUS "Found g2o: ${G2O_INCLUDE_DIRS}")
ENDIF(G2O_FOUND) ENDIF(G2O_FOUND)
ENDIF() ENDIF()
ENDIF(WITH_G2O) ENDIF(WITH_G2O)
+10 -18
View File
@@ -373,28 +373,22 @@ ENDIF(WITH_TORO)
IF(G2O_FOUND) IF(G2O_FOUND)
IF(g2o_FOUND) IF(g2o_FOUND)
SET(LIBRARIES SET(LIBRARIES ${LIBRARIES}
${LIBRARIES}
g2o::core g2o::core
g2o::solver_eigen g2o::solver_eigen
g2o::solver_pcg g2o::solver_pcg
g2o::types_slam2d g2o::types_slam2d
g2o::types_slam3d g2o::types_slam3d
g2o::types_sba g2o::types_sba)
)
IF(TARGET g2o::solver_csparse) IF(TARGET g2o::solver_csparse)
SET(LIBRARIES SET(LIBRARIES ${LIBRARIES}
${LIBRARIES} g2o::solver_csparse
g2o::solver_csparse g2o::csparse_extension)
g2o::csparse_extension
)
ENDIF(TARGET g2o::solver_csparse) ENDIF(TARGET g2o::solver_csparse)
IF(TARGET g2o::solver_cholmod) IF(TARGET g2o::solver_cholmod)
SET(LIBRARIES SET(LIBRARIES ${LIBRARIES}
${LIBRARIES} g2o::solver_cholmod)
g2o::solver_cholmod ENDIF(TARGET g2o::solver_cholmod)
)
ENDIF(TARGET g2o::solver_csparse)
ELSE() ELSE()
SET(INCLUDE_DIRS SET(INCLUDE_DIRS
${INCLUDE_DIRS} ${INCLUDE_DIRS}
@@ -405,13 +399,11 @@ IF(G2O_FOUND)
${G2O_LIBRARIES} ${G2O_LIBRARIES}
) )
ENDIF() ENDIF()
SET(SRC_FILES SET(SRC_FILES ${SRC_FILES}
${SRC_FILES}
optimizer/g2o/edge_se3_xyzprior.cpp optimizer/g2o/edge_se3_xyzprior.cpp
) )
IF(WITH_VERTIGO) IF(WITH_VERTIGO)
SET(SRC_FILES SET(SRC_FILES ${SRC_FILES}
${SRC_FILES}
optimizer/vertigo/g2o/edge_se2Switchable.cpp optimizer/vertigo/g2o/edge_se2Switchable.cpp
optimizer/vertigo/g2o/edge_se3Switchable.cpp optimizer/vertigo/g2o/edge_se3Switchable.cpp
optimizer/vertigo/g2o/edge_switchPrior.cpp optimizer/vertigo/g2o/edge_switchPrior.cpp