frankaemika/libfranka

using libfranka in own cpp file

Closed this issue · 1 comments

i installed the libfranka and franka_ros using command sudo apt install ros-kinetic-libfranka ros-kinetic-franka-ros now i have created own catkin workspace and own package. i created a cpp file incluing libfranka and franka_ros to control robot. but at making my package i met error like following
In file included from /opt/ros/kinetic/include/libfranka/franka/robot_state.h:8:0,
from /opt/ros/kinetic/include/franka_hw/franka_state_interface.h:7,
from /opt/ros/kinetic/include/franka_hw/franka_cartesian_command_interface.h:7,
from /home/yin/test_ws/src/image_proc/src/franka_myController.cpp:1:
/opt/ros/kinetic/include/libfranka/franka/duration.h:24:12: error: expected ‘;’ at end of member declaration
Duration() noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:24:14: error: ‘noexcept’ does not name a type
Duration() noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:24:14: note: C++11 ‘noexcept’ only available with -std=c++11 or -std=gnu++11
/opt/ros/kinetic/include/libfranka/franka/duration.h:31:30: error: expected ‘)’ before ‘milliseconds’
explicit Duration(uint64_t milliseconds) noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:38:17: error: ‘std::chrono’ has not been declared
Duration(std::chrono::duration<uint64_t, std::milli> duration) noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:38:33: error: expected ‘)’ before ‘<’ token
Duration(std::chrono::duration<uint64_t, std::milli> duration) noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:43:31: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
Duration(const Duration&) = default;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:48:42: warning: defaulted and deleted functions only available with -std=c++11 or -std=gnu++11
Duration& operator=(const Duration&) = default;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:55:17: error: ‘chrono’ in namespace ‘std’ does not name a type
operator std::chrono::duration<uint64_t, std::milli>() const noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:62:18: error: expected ‘;’ at end of member declaration
double toSec() const noexcept;
^
/opt/ros/kinetic/include/libfranka/franka/duration.h:62:24: error: ‘noexcept’ does not name a type
double toSec() const noexcept;
^
it seems that some erros in head files in libfranka, but i don't know how to solve this error. can anyone give me a hand? thank you in advance.