Open cdoehn opened 4 years ago
Can you check which version of libmodbus-dev
is installed on your system? Make sure you have the newest one. Should be 3.0.6-2
.
The other error is related to current un-released changes in moveit_msgs
. So a solution would be to also clone https://github.com/ros-planning/moveit_msgs into your workspace.
I updated everything, checked out moveit_msgs. libmodbus-dev is also correct.
On my machine, it stills throws the error:
Errors << prbt_hardware_support:make /catkin_ws/logs/prbt_hardware_support/build.make.000.log
/catkin_ws/src/pilz_robots/prbt_hardware_support/src/libmodbus_client.cpp: In member function ‘virtual void prbt_hardware_support::LibModbusClient::setResponseTimeoutInMs(long unsigned int)’:
/catkin_ws/src/pilz_robots/prbt_hardware_support/src/libmodbus_client.cpp:56:51: error: invalid conversion from ‘timeval*’ to ‘uint32_t {aka unsigned int}’ [-fpermissive]
modbus_set_response_timeout(modbusconnection, &response_timeout);
^~~~~
Ah, sorry. I thought it is an old Modbus API. But it is the other way around.
Do you have a newer version than 3.0.6
?
I am using the 3.0.6-2 .
@cdoehn Was this compilation problem solved in the meantime?
Commit
pilz_teach: d0dfb pilz_robots: b5d88 moveit: efa7f
Steps to reproduce
mkdir catkin_ws cd catkin_ws mkdir src cd src catkin_init_workspace git clone https://github.com/PilzDE/pilz_teach.git git clone https://github.com/PilzDE/pilz_robots.git git clone https://github.com/ros-planning/moveit.git OR: git clone https://github.com/PilzDE/moveit.git cd .. rosdep install --from-paths src --ignore-src -r -y catkin_make
Expected behavior
Should compile without error
Observed behavior 1:
catkin_ws/src/moveit/moveit_core/robot_state/src/conversions.cpp: In function ‘void moveit::core::{anonymous}::_attachedBodyToMsg(const moveit::core::AttachedBody&, moveit_msgs::AttachedCollisionObject&)’: /home/christian/catkin_ws/src/moveit/moveit_core/robot_state/src/conversions.cpp:219:14: error: ‘moveitmsgs::AttachedCollisionObject<std::allocator >::_object_type {aka struct moveitmsgs::CollisionObject<std::allocator >}’ has no member named ‘subframe_names’
aco.object.subframe_names.clear();
Observed behavior 2:
catkin_ws2/src/pilz_robots/prbt_hardware_support/src/libmodbus_client.cpp: In member function ‘virtual void prbt_hardware_support::LibModbusClient::setResponseTimeoutInMs(long unsigned int)’: /home/sascha/catkin_ws2/src/pilz_robots/prbt_hardware_support/src/libmodbus_client.cpp:56:51: error: invalid conversion from ‘timeval*’ to ‘uint32_t {aka unsigned int}’ [-fpermissive] modbus_set_response_timeout(modbusconnection, &response_timeout); ^~~~~
Operating system:
No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.4 LTS Release: 18.04 Codename: bionic