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

This is not a ROS or cmake error, but originates from the linker - so your code.

First the obvious: Do these functions exist like that in your code? Are they also compiled into object files somewhere (not just included in a header)? And are these object files linked into the main executable or into a library that is linked to that?

Given those are true I suspect you are mixing C and C++ code and have a name mangling issue. Is the header with the respective functions used both in .c and .cpp files? In that case use the usual

#ifdef __cplusplus
extern "C" {
#endif
....
#ifdef __cplusplus
}
#endif

before and after your function declarations in the header.