kyle__ 2022-03-03 16:00
浏览 264
已结题

Ubuntu20.4 noetic 入门21讲 12讲 在catkin_cmake时报错,如何解决?


csy@csy-virtual-machine:~/catkin_ws$ catkin_make 
Base path: /home/csy/catkin_ws
Source space: /home/csy/catkin_ws/src
Build space: /home/csy/catkin_ws/build
Devel space: /home/csy/catkin_ws/devel
Install space: /home/csy/catkin_ws/install
####
#### Running command: "make cmake_check_build_system" in "/home/csy/catkin_ws/build"
####
####
#### Running command: "make -j2 -l2" in "/home/csy/catkin_ws/build"
####
[ 11%] Built target hello
[ 11%] Built target std_msgs_generate_messages_cpp
[ 11%] Built target _learning_topic_generate_messages_check_deps_Person
[ 11%] Built target std_msgs_generate_messages_lisp
[ 11%] Built target std_msgs_generate_messages_py
[ 11%] Built target std_msgs_generate_messages_eus
[ 11%] Built target std_msgs_generate_messages_nodejs
[ 23%] Built target pose_subscriber
[ 35%] Built target velocity_publisher
[ 41%] Built target learning_topic_generate_messages_cpp
[ 47%] Built target learning_topic_generate_messages_lisp
[ 58%] Built target learning_topic_generate_messages_py
[ 70%] Built target learning_topic_generate_messages_eus
[ 76%] Built target learning_topic_generate_messages_nodejs
[ 82%] Linking CXX executable /home/csy/catkin_ws/devel/lib/learning_topic/person_publisher
[ 88%] Linking CXX executable /home/csy/catkin_ws/devel/lib/learning_topic/person_subscriber
/usr/bin/ld: CMakeFiles/person_publisher.dir/src/person_publisher.cpp.o: in function `main':
person_publisher.cpp:(.text+0x97): undefined reference to `ros::init(int&, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)'
/usr/bin/ld: person_publisher.cpp:(.text+0x129): undefined reference to `ros::NodeHandle::NodeHandle(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&)'
/usr/bin/ld: person_publisher.cpp:(.text+0x1d4): undefined reference to `ros::Rate::Rate(double)'
/usr/bin/ld: person_publisher.cpp:(.text+0x1e3): undefined reference to `ros::ok()'
/usr/bin/ld: person_publisher.cpp:(.text+0x23e): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text+0x24e): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text+0x2a7): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text+0x2ea): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text+0x2f6): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text+0x375): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text+0x388): undefined reference to `ros::Rate::sleep()'
/usr/bin/ld: person_publisher.cpp:(.text+0x3b0): undefined reference to `ros::Publisher::~Publisher()'
/usr/bin/ld: person_publisher.cpp:(.text+0x3bf): undefined reference to `ros::NodeHandle::~NodeHandle()'
/usr/bin/ld: person_publisher.cpp:(.text+0x4d0): undefined reference to `ros::Publisher::~Publisher()'
/usr/bin/ld: person_publisher.cpp:(.text+0x4df): undefined reference to `ros::NodeHandle::~NodeHandle()'
/usr/bin/ld: CMakeFiles/person_publisher.dir/src/person_publisher.cpp.o: in function `ros::Publisher ros::NodeHandle::advertise<learning_topic::Person_<std::allocator<void> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, bool)':
person_publisher.cpp:(.text._ZN3ros10NodeHandle9advertiseIN14learning_topic7Person_ISaIvEEEEENS_9PublisherERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjb[_ZN3ros10NodeHandle9advertiseIN14learning_topic7Person_ISaIvEEEEENS_9PublisherERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjb]+0x139): undefined reference to `ros::NodeHandle::advertise(ros::AdvertiseOptions&)'
/usr/bin/ld: CMakeFiles/person_publisher.dir/src/person_publisher.cpp.o: in function `void ros::Publisher::publish<learning_topic::Person_<std::allocator<void> > >(learning_topic::Person_<std::allocator<void> > const&) const':
person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x4b): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `personInfoCallback(boost::shared_ptr<learning_topic::Person_<std::allocator<void> > const> const&)':
person_subscriber.cpp:(.text+0x44): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_subscriber.cpp:(.text+0x54): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_subscriber.cpp:(.text+0xa1): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_subscriber.cpp:(.text+0xde): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_subscriber.cpp:(.text+0xea): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_subscriber.cpp:(.text+0x17e): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `main':
person_subscriber.cpp:(.text+0x24f): undefined reference to `ros::init(int&, char**, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int)'
/usr/bin]+0x5b): undefined reference to `ros::console::initialize()'/ld: person_subscriber.cpp:(.text+0x2e1): undefined reference to `ros::NodeHandle::NodeHandle(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::less<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > > > const&)'
/usr/bin/ld: person_subscriber.cpp:(.text+0x402): undefined reference to `ros::spin()'
/usr/bin/ld: person_subscriber.cpp:(.text+0x416): undefined reference to `ros::Subscriber::~Subscriber()'
/usr/bin/ld: person_subscriber.cpp:(.text+0x425): undefined reference to `ros::NodeHandle::~NodeHandle()'
/usr/bin/ld: person_subscriber.cpp:(.text+0x4fd): undefined reference to `ros::Subscriber::~Subscriber()'
/usr/bin/ld: person_subscriber.cpp:(.text+0x50c): undefined reference to `ros::NodeHandle::~NodeHandle()'
/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `ros::Subscriber ros::NodeHandle::subscribe<learning_topic::Person_<std::allocator<void> > >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned int, void (*)(boost::shared_ptr<learning_topic::Person_<std::allocator<void> > const> const&), ros::TransportHints const&)':
person_subscriber.cpp:(.text._ZN3ros10NodeHandle9subscribeIN14learning_topic7Person_ISaIvEEEEENS_10SubscriberERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjPFvRKN5boost10shared_ptrIKT_EEERKNS_14TransportHintsE[_ZN3ros10NodeHandle9subscribeIN14learning_topic7Person_ISaIvEEEEENS_10SubscriberERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEjPFvRKN5boost10shared_ptrIKT_EEERKNS_14TransportHintsE]+0x110): undefined reference to `ros::NodeHandle::subscribe(ros::SubscribeOptions&)'
/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `ros::SubscriptionCallbackHelperT<boost::shared_ptr<learning_topic::Person_<std::allocator<void> > const> const&, void>::deserialize(ros::SubscriptionCallbackHelperDeserializeParams const&)':
person_subscriber.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0x65): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_subscriber.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0x75): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_subscriber.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0xc2): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_subscriber.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0xfe): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_subscriber.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0x10a): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_subscriber.cpp:(.text._ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE[_ZN3ros27SubscriptionCallbackHelperTIRKN5boost10shared_ptrIKN14learning_topic7Person_ISaIvEEEEEvE11deserializeERKNS_43SubscriptionCallbackHelperDeserializeParamsE]+0x187): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `void ros::serialization::Serializer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::read<ros::serialization::IStream>(ros::serialization::IStream&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&)':
person_subscriber.cpp:(.text._ZN3ros13serialization10SerializerINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE4readINS0_7IStreamEEEvRT_RS7_[_ZN3ros13serialization10SerializerINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE4readINS0_7IStreamEEEvRT_RS7_]+0x9e): undefined reference to `ros::serialization::throwStreamOverrun()'
/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `void ros::serialization::Serializer<unsigned char>::read<ros::serialization::IStream>(ros::serialization::IStream&, unsigned char&)':
person_subscriber.cpp:(.text._ZN3ros13serialization10SerializerIhE4readINS0_7IStreamEEEvRT_Rh[_ZN3ros13serialization10SerializerIhE4readINS0_7IStreamEEEvRT_Rh]+0x57): undefined reference to `ros::serialization::throwStreamOverrun()'
/usr/bin/ld: CMakeFiles/person_subscriber.dir/src/person_subscriber.cpp.o: in function `void ros::serialization::Serializer<unsigned int>::read<ros::serialization::IStream>(ros::serialization::IStream&, unsigned int&)':
person_subscriber.cpp:(.text._ZN3ros13serialization10SerializerIjE4readINS0_7IStreamEEEvRT_Rj[_ZN3ros13serialization10SerializerIjE4readINS0_7IStreamEEEvRT_Rj]+0x57): undefined reference to `ros::serialization::throwStreamOverrun()'

collect2: error: ld returned 1 exit status
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0xae): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0xee): undefined reference to `ros::make[2]: *** [learning_topic/CMakeFiles/person_subscriber.dir/build.make:84:/home/csy/catkin_ws/devel/lib/learning_topic/person_subscriber] 错误 1
console::setLogLocationLevel(ros::console::make[1]: *** [CMakeFiles/Makefile2:1285:learning_topic/CMakeFiles/person_subscriber.dir/all] 错误 2
make[1]: *** 正在等待未完成的任务....
LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0xfa): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x160): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x16b): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x17b): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x1ce): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x20e): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x21a): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x272): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x27d): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x28d): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x2e0): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x320): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x32c): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x384): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x3a5): undefined reference to `ros::Publisher::Impl::isValid() const'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x3b7): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x3c7): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x41a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x45a): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x466): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x4cc): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x4d7): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x4e7): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x53a): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x57a): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x586): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x5f5): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x600): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x610): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x663): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x6a3): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x6af): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x707): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x815): undefined reference to `ros::console::g_initialized'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x825): undefined reference to `ros::console::initialize()'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x878): undefined reference to `ros::console::initializeLogLocation(ros::console::LogLocation*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x8b7): undefined reference to `ros::console::setLogLocationLevel(ros::console::LogLocation*, ros::console::levels::Level)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x8c3): undefined reference to `ros::console::checkLogLocationEnabled(ros::console::LogLocation*)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0x9a2): undefined reference to `ros::console::print(ros::console::FilterBase*, void*, ros::console::levels::Level, char const*, int, char const*, char const*, ...)'
/usr/bin/ld: person_publisher.cpp:(.text._ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_[_ZNK3ros9Publisher7publishIN14learning_topic7Person_ISaIvEEEEEvRKT_]+0xa35): undefined reference to `ros::Publisher::publish(boost::function<ros::SerializedMessage ()> const&, ros::SerializedMessage&) const'
/usr/bin/ld: CMakeFiles/person_publisher.dir/src/person_publisher.cpp.o: in function `void ros::serialization::Serializer<unsigned int>::write<ros::serialization::OStream>(ros::serialization::OStream&, unsigned int)':
person_publisher.cpp:(.text._ZN3ros13serialization10SerializerIjE5writeINS0_7OStreamEEEvRT_j[_ZN3ros13serialization10SerializerIjE5writeINS0_7OStreamEEEvRT_j]+0x56): undefined reference to `ros::serialization::throwStreamOverrun()'
/usr/bin/ld: CMakeFiles/person_publisher.dir/src/person_publisher.cpp.o: in function `void ros::serialization::Serializer<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >::write<ros::serialization::OStream>(ros::serialization::OStream&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)':
person_publisher.cpp:(.text._ZN3ros13serialization10SerializerINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5writeINS0_7OStreamEEEvRT_RKS7_[_ZN3ros13serialization10SerializerINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEE5writeINS0_7OStreamEEEvRT_RKS7_]+0xb0): undefined reference to `ros::serialization::throwStreamOverrun()'
/usr/bin/ld: CMakeFiles/person_publisher.dir/src/person_publisher.cpp.o: in function `void ros::serialization::Serializer<unsigned char>::write<ros::serialization::OStream>(ros::serialization::OStream&, unsigned char)':
person_publisher.cpp:(.text._ZN3ros13serialization10SerializerIhE5writeINS0_7OStreamEEEvRT_h[_ZN3ros13serialization10SerializerIhE5writeINS0_7OStreamEEEvRT_h]+0x58): undefined reference to `ros::serialization::throwStreamOverrun()'
collect2: error: ld returned 1 exit status
make[2]: *** [learning_topic/CMakeFiles/person_publisher.dir/build.make:84:/home/csy/catkin_ws/devel/lib/learning_topic/person_publisher] 错误 1
make[1]: *** [CMakeFiles/Makefile2:905:learning_topic/CMakeFiles/person_publisher.dir/all] 错误 2
make: *** [Makefile:141:all] 错误 2
Invoking "make -j2 -l2" failed
csy@csy-virtual-machine:~/catkin_ws$ 

找到了!
add_executable(person_publisher src/person_publisher.cpp)
target_link_libraries(person_publisher ${catkin_LIBRARIES})
add_dependencies(person_publisher ${PROJECT_NAME}_generate_messages_cpp)

add_executable(person_subscriber src/person_subscriber.cpp)
target_link_libraries(person_subscriber ${catkin_LIBRARIES})
add_dependencies(person_subscriber ${PROJECT_NAME}_generate_messages_cpp)

这段代码中LIBRARIES之前拼错了,打成了LIBARIES。修改后运行成功

  • 写回答

0条回答 默认 最新

    报告相同问题?

    问题事件

    • 系统已结题 3月11日
    • 修改了问题 3月3日
    • 创建了问题 3月3日

    悬赏问题

    • ¥15 调用transformers库
    • ¥100 c++集成继承python解析器遇到问题
    • ¥15 由于导出的数据名字中带有/,导致Matlab打不开,怎么办?
    • ¥15 新硬盘安装的程序总是崩溃,提示遇到错误
    • ¥15 openpcdet自制数据集评估bev精度和3d精度相同
    • ¥15 excel 上下按钮 显示行
    • ¥20 云卓h12pro 数传问题
    • ¥20 请问有人知道怎么用工艺库里面的sdb文件通过virtuoso导出来library里面每个cell的symbol吗?
    • ¥20 海思 nnie 编译 报错
    • ¥50 决策面并仿真,要求有仿真结果图