I have build erro about Ros2 rcl packages [closed]
- Operating System:
- Ubuntu 18.04 ROS2 crystal ( binary install )
- Installation type:
- from source
Names and versions of stacks/packages
git clone https://github.com/ros2/rcl.git
I use master branchI have build erro about erro too many arguments to function ‘rmw_create_wait_set’ in rcl/wait.c plaese help me
Steps to reproduce issue
hyunoklee@hyunoklee-535U4C:~/turtlebot3_ws/src$ git clone https://github.com/ros2/rcl.git
hyunoklee@hyunoklee-535U4C:~/turtlebot3_ws/src$ cd ..
hyunoklee@hyunoklee-535U4C:~/turtlebot3_ws$ colcon build --symlink-install --cmake-args -DBUILD_TESTING=0
Starting >>> rcl
--- stderr: rcl
/home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/context.c: In function ‘__cleanup_context’:
/home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/context.c:139:27: warning: implicit declaration of function ‘rmw_context_fini’; did you mean ‘rcl_context_fini’? [-Wimplicit-function-declaration]
rmw_ret_t rmw_ret = rmw_context_fini(&(context->impl->rmw_context));
^~~~~~~~~~~~~~~~
rcl_context_fini
/home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/wait.c: In function ‘rcl_wait_set_init’:
/home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/wait.c:150:54: warning: passing argument 1 of ‘rmw_create_wait_set’ makes integer from pointer without a cast [-Wint-conversion]
wait_set->impl->rmw_wait_set = rmw_create_wait_set(&(context->impl->rmw_context), num_conditions);
^
In file included from /home/hyunoklee/turtlebot3_ws/src/rcl/rcl/include/rcl/timer.h:31:0,
from /home/hyunoklee/turtlebot3_ws/src/rcl/rcl/include/rcl/wait.h:31,
from /home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/wait.c:20:
/opt/ros/crystal/include/rmw/rmw.h:535:1: note: expected ‘size_t {aka long unsigned int}’ but argument is of type ‘rmw_context_t * {aka struct rmw_context_t *}’
rmw_create_wait_set(size_t max_conditions);
^~~~~~~~~~~~~~~~~~~
/home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/wait.c:150:34: error: too many arguments to function ‘rmw_create_wait_set’
wait_set->impl->rmw_wait_set = rmw_create_wait_set(&(context->impl->rmw_context), num_conditions);
^~~~~~~~~~~~~~~~~~~
In file included from /home/hyunoklee/turtlebot3_ws/src/rcl/rcl/include/rcl/timer.h:31:0,
from /home/hyunoklee/turtlebot3_ws/src/rcl/rcl/include/rcl/wait.h:31,
from /home/hyunoklee/turtlebot3_ws/src/rcl/rcl/src/rcl/wait.c:20:
/opt/ros/crystal/include/rmw/rmw.h:535:1: note: declared here
rmw_create_wait_set(size_t max_conditions);
^~~~~~~~~~~~~~~~~~~
make[2]: *** [CMakeFiles/rcl.dir/src/rcl/wait.c.o] Error 1
make[1]: *** [CMakeFiles/rcl.dir/all] Error 2
make: *** [all] Error 2
---
Failed <<< rcl [ Exited with code 2 ]
Summary: 0 packages finished [3.59s]
1 package failed: rcl
1 package had stderr output: rcl
3 packages not processed
This is a duplicate of this GitHub issue: https://github.com/ros2/rcl/issues/390 Please do not cross post questions, see: https://wiki.ros.org/Support#Etiquette