Change
ros::init(argc, argv,"talker");
to
ros::init(argc, argv,"publisher");
Change
ros::init(argc, argv,"listener");
to
ros::init(argc, argv,"subscriber");
Open session3_pubsub/CMakeLists.txt and add following lines to the bottom of the file.
add_executable(publisher src/ publisher.cpp)
target_link_libraries(publisher ${catkin_LIBRARIES})
add_dependencies(publisher session3_pubsub_generate_messages_cpp)
add_executable(subscriber src/subscriber.cpp)
target_link_libraries(subscriber ${catkin_LIBRARIES})
add_dependencies(subscriber session3_pubsub_generate_messages_cpp)
Go to root of the workspace
cd ~/ros_workshop/
catkin build
or
catkin_make
Open a terminal and run,
roscore
Open a 2nd terminal in the workspace root and run,
source devel/setup.bash
rosrun session3_pubsub publisher
Open a 3rd terminal in the workspace root and run,
source devel/setup.bash
rosrun session3_pubsub subscriber