ros-drivers / rosserial

A ROS client library for small, embedded devices, such as Arduino. See: http://wiki.ros.org/rosserial
508 stars 527 forks source link

Changed C++ std::memcpy() into C version #525

Closed rafaol closed 3 years ago

rafaol commented 3 years ago

The cstring include and std::memcpy code were causing issues with rosserial_arduino #518 . Arduino by default does not have the C++ standard library available, and "ros/msg.h" is copied by rosserial_arduino's "make_libraries.py" into the generated ros_lib Arduino library. The fix was simply to replace memcpy by its equivalent C version.

RBinsonB commented 3 years ago

Any update on this merge request? Using this branch was the only way I could resolve issue #518.

Samu24 commented 3 years ago

maybe @mikeferguson @mikepurvis

mikeferguson commented 3 years ago

maybe @mikeferguson @mikepurvis

I'm no longer active on this project.

mikepurvis commented 3 years ago

I'm surprised this is needed, as the target for rosserial has always been a C++ compiler where the basic stdlib should be available. However, it looks like a lot of people are affected in the other thread, so it makes sense to fix it for them.