Error: undefined reference to `ros::init(int&, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)'
I am facing a reference issue while building using the CMakeList.txt file.
cmake_minimum_required(VERSION 3.5.0)
set(CMAKE_CXX_STANDARD 11)
project(conti_radar)
find_package(catkin REQUIRED COMPONENTS
roscpp
std_msgs
)
find_package(Protobuf REQUIRED)
catkin_package(
# INCLUDE_DIRS include
# LIBRARIES conti_radar
# CATKIN_DEPENDS roscpp std_msgs
# DEPENDS system_lib
)
include_directories(
# include
${catkin_INCLUDE_DIRS}
)
set(PDK_INTERFACE_LIB "/opt/pdk/lib/libpdk_interface.so")
set(PDK_IMPORT_DIR "/opt/pdk/include")
set(PROTOBUF_FILE_LIST
${PDK_IMPORT_DIR}/pdk/pdk_MsgHeader.proto
${PDK_IMPORT_DIR}/pdk/pdk_SensorMsgHeader.proto
${PDK_IMPORT_DIR}/pdk/pdk_RadarDetectionImage.proto
${PDK_IMPORT_DIR}/pdk/pdk_RadarStatus.proto
${PDK_IMPORT_DIR}/pdk/pdk_RadarObjectList.proto
)
protobuf_generate_cpp(PROTO_SRCS PROTO_HDRS ${PROTOBUF_FILE_LIST})
add_executable(radar
/home/radar/catkin_radar/src/conti_radar/src/radar.cpp
${PROTO_SRCS}
)
target_include_directories(radar
PRIVATE ${CMAKE_CURRENT_BINARY_DIR}
PRIVATE ${PDK_IMPORT_DIR}
)
target_link_libraries(radar
PRIVATE ${PDK_INTERFACE_LIB}
PRIVATE protobuf::libprotobuf
)
Kindly help in resolving this issue.