[ros-users] Nodelet fails to build on OSX
Nicholas Butko
nbutko at ucsd.edu
Thu Dec 2 19:24:54 UTC 2010
FYI, Changing "64" to "96" fixes the problem. Changing it to "80" doesn't.
--Nick
On Dec 2, 2010, at 11:20 AM, Nicholas Butko wrote:
> 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)];
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20101202/71abea00/attachment-0003.html>
More information about the ros-users
mailing list