Step 6 – Editing CMakeLists.txt

We need to add extra lines to the CMakeLists.txt definition, as given in the following code:

   find_package(Qt5 COMPONENTS Core Widgets REQUIRED) 
   set(QT_LIBRARIES Qt5::Widgets) 
   catkin_package( 
       LIBRARIES ${PROJECT_NAME} 
       CATKIN_DEPENDS roscpp 
                     rviz 
   ) 
 
   include_directories(include  
         ${catkin_INCLUDE_DIRS}  
         ${Boost_INCLUDE_DIRS} 
   ) 
 
   link_directories( 
         ${catkin_LIBRARY_DIRS} 
         ${Boost_LIBRARY_DIRS} 
   ) 
 
   add_definitions(-DQT_NO_KEYWORDS) 
 
   QT5_WRAP_CPP(MOC_FILES 
     src/teleop_pad.h  
     OPTIONS -DBOOST_TT_HAS_OPERATOR_HPP_INCLUDED -DBOOST_LEXICAL_CAST_INCLUDED  
   ) 
 
   set(SOURCE_FILES 
     src/teleop_pad.cpp  
     ${MOC_FILES} 
   ) 
   add_library(${PROJECT_NAME} ${SOURCE_FILES}) 
   target_link_libraries(${PROJECT_NAME} ${QT_LIBRARIES} ${catkin_LIBRARIES}) 

You will ...

Get Mastering ROS for Robotics Programming - Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.