[ros-users] Nodelet fails to build on OSX

Forside
Vedhæftede filer:
Indlæg som e-mail
+ (text/plain)
+ (text/html)
Slet denne besked
Besvar denne besked
Skribent: User discussions
Dato:  
Til: User discussions
Emne: [ros-users] Nodelet fails to build on OSX
Sorry if this is a known issue.
--Nick


Compiling "nodelet" I get the following error:

[ 80%] Building CXX object CMakeFiles/nodeletlib.dir/src/nodelet_class.o
In file included from /Users/nick/ros/stacks/common/nodelet/src/nodelet_class.cpp:32:
/Users/nick/ros/stacks/common/nodelet/include/nodelet/detail/callback_queue_manager.h:125: error: overflow in array dimension
/Users/nick/ros/stacks/common/nodelet/include/nodelet/detail/callback_queue_manager.h:125: error: size of array ‘pad’ is too large
make[3]: *** [CMakeFiles/nodeletlib.dir/src/nodelet_class.o] Error 1
make[2]: *** [CMakeFiles/nodeletlib.dir/all] Error 2
make[1]: *** [all] Error 2
make: *** [all] Error 2

Here is the line for the header file. It looks like there is possibly some unsigned integer underflow going on. Presumably sizeof(V_Queue)+sizeof(boost::mutex) is greater than 64.


    // Pad to then next cache line
    // TODO: magic number
    uint8_t pad[64 - sizeof(V_Queue) - sizeof(boost::mutex)];