ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

I got a similar linker error because I was using a static library from package A that depended on message foo and when linking an executable in package B that depends on A, the linker got this

[ 83%] Linking CXX executable B

/usr/bin/c++ node.cpp.o -o B_exe install/A/lib/libfoo_msgs__rosidl_typesupport_cpp.so libA.a

I couldn't figure out how to tell cmake to switch the order of libs it got from ament, so I just build a shared library for A, then the linker order is not important

/usr/bin/c++ node.cpp.o -o B_exe install/A/lib/libfoo_msgs__rosidl_typesupport_cpp.so libA.so