Files
rtabmap_ros/rtabmap_viz/CMakeLists.txt
T
Lucas Walterandmatlabbe 49cbce4874 build rtabmap_viz with Qt5 on Ubuntu 22.10 (#905)
* build rtabmap_viz with Qt5

* eliminate circular dependency (nothing can depend on rtabmap_ros that rtabmap_ros depends on), and resolve 'Unknown CMake command catkin_package' with catkin build

* more dependency cleanup but can't get rid of rtabmap_demos circular dependency on rtabmap_legacy

* Update CMakeLists.txt

---------

Co-authored-by: matlabbe <[email protected]>
2023-03-05 19:00:19 -08:00

60 lines
1.5 KiB
CMake

cmake_minimum_required(VERSION 3.5)
project(rtabmap_viz)
find_package(catkin REQUIRED COMPONENTS
cv_bridge geometry_msgs std_msgs std_srvs nav_msgs rtabmap_msgs rtabmap_sync tf
)
###################################
## catkin specific configuration ##
###################################
catkin_package(
INCLUDE_DIRS include
CATKIN_DEPENDS cv_bridge geometry_msgs std_msgs std_srvs nav_msgs rtabmap_msgs rtabmap_sync tf
)
# catkin is not using cmake targets for dependencies,
# so we should explcitly look for Qt to get compilation
# flags (-fPIC missing)
FIND_PACKAGE(Qt5 COMPONENTS Widgets Core Gui QUIET)
IF(NOT Qt5_FOUND)
FIND_PACKAGE(Qt4 COMPONENTS QtCore QtGui REQUIRED)
INCLUDE(${QT_USE_FILE})
ENDIF(NOT Qt5_FOUND)
###########
## Build ##
###########
# include_directories(include)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}/include
${catkin_INCLUDE_DIRS}
)
add_executable(rtabmap_viz src/GuiNode.cpp src/GuiWrapper.cpp src/PreferencesDialogROS.cpp)
IF(Qt5_FOUND)
QT5_USE_MODULES(rtabmap_viz Widgets Core Gui)
ENDIF(Qt5_FOUND)
target_link_libraries(rtabmap_viz ${catkin_LIBRARIES})
#############
## Install ##
#############
install(TARGETS
rtabmap_viz
ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION}
RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)
## Mark cpp header files for installation
install(DIRECTORY include/${PROJECT_NAME}/
DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION}
FILES_MATCHING PATTERN "*.h"
)