0
$\begingroup$

Rosanswers logo

Hi, I am desperately trying to install ROS Hydro on OSX 10.8 with Xcode 5.0.2. While compiling the packages, I get the following error, compiling the Orocos_kdl package and I did not find any plausible solution on the answers for this error. I donot have enough karma to gist this error.

247aIn file included from : /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/segment.hpp25default:: 26 :
argument musterror : be /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hppa: 247definition:friend25 
:declaration  specifying errora:  default argument must be frienda  declarationdefinition specifying
 a default argument must be a definition
     inline friend bool Equal(const Vector& a,const Vector& b,double eps=epsilon);
     inline friend bool Equal(const Vector& a,const Vector& b,double eps=epsilon);
                        ^
                        ^
     inline friend bool Equal(const Vector& a,const Vector& b,double eps=epsilon);
                        ^
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:247:25: error: friend declaration specifying a default argument must be a definition
     inline friend bool Equal(const Vector& a,const Vector& b,double eps=epsilon);
                        ^
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:697:25: error: friend declaration specifying a default argument must be a definition
     inline friend bool Equal(const Frame& a,const Frame& b,double eps=epsilon);
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:697:25: error/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp: :697:friend25 :declaration  specifying errora :                         ^default
 argumentfriend  mustdeclaration  bespecifying  aa  definitiondefault 
argument must be a definition
     inline friend bool Equal(const Frame& a,const Frame& b,double eps=epsilon);
                        ^
     inline friend bool Equal(const Frame& a,const Frame& b,double eps=epsilon);
                        ^
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:697:25: error: friend declaration specifying a default argument must be a definition
     inline friend bool Equal(const Frame& a,const Frame& b,double eps=epsilon);
                        ^
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:772:25: error: friend declaration specifying/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp :a772 :default25 :argument  must errorbe:  a frienddefinition declaration
 specifying a default argument must be a definition
     inline friend bool Equal(const Twist& a,const Twist& b,double eps=epsilon);
                        ^
     inline friend bool Equal(const Twist& a,const Twist& b,double eps=epsilon);

Some part of it shows this :

/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.inl:1037:14: error: friend declaration specifying a default argument must be the only declaration
IMETHOD bool Equal(const Wrench& a,const Wrench& b,double eps) {
             ^
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:935:25: note: previous declaration is here
     inline friend bool Equal(const Wrench& a,const Wrench& b,double eps=epsilon);
                        ^
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chaindynparam.cpp:22:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chaindynparam.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chainidsolver_recursive_newton_euler.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chainidsolver.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chain.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/segment.hpp:26:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:1252:


/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:1043:14: note: implicitly declared private here
    double s,c;
             ^
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chaindynparam.cpp:22:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chaindynparam.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chainidsolver_recursive_newton_euler.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chainidsolver.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/chain.hpp:25:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/segment.hpp:26:
In file included from /Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:1252:
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.inl:1053:26: error: 'c' is a private member of 'KDL::Rotation2'
    return ( Equal(a.c,b.c,eps) && Equal(a.s,b.s,eps) );
                         ^
/Users/Siva/ros_catkin_ws/src/orocos_kinematics_dynamics/orocos_kdl/src/frames.hpp:1043:14: note: implicitly declared private here
    double s,c;
             ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make[2]: *** [src/CMakeFiles/orocos-kdl.dir/chain.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
20 errors generated.
make[2]: *** [src/CMakeFiles/orocos-kdl.dir/chainfksolverpos_recursive.cpp.o] Error 1
20 errors generated.
make[2]: *** [src/CMakeFiles/orocos-kdl.dir/chaindynparam.cpp.o] Error 1
20 errors generated.
make[2]: *** [src/CMakeFiles/orocos-kdl.dir/articulatedbodyinertia.cpp.o] Error 1
make[1]: *** [src/CMakeFiles/orocos-kdl.dir/all] Error 2
make: *** [all] Error 2
<== Failed to process package 'orocos_kdl':

Kindly let me know on how to solve this. Regards


Originally posted by karthik_ms on ROS Answers with karma: 71 on 2014-04-14

Post score: 1

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Hi,

I ran into similar issues when I was compiling a few days ago. I replaced orocos_kdl with the latest version from their git. This solved most compiling errors and introduced some new ones (mainly regarding the change from reference to pointer, changing some '.' to '->' did the trick).

Good luck!


Originally posted by Hansg91 with karma: 1909 on 2014-04-16

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by demmeln on 2014-04-17:
Did you face the issue after applying the patches suggested here http://answers.ros.org/question/94771/building-ros-on-osx-109-solution/ ?

Comment by Hansg91 on 2014-04-17:
I didn't try those patches, I thought they were just about fixing the incomplete type in the template, but I see they also do something regarding the "Equals" functions. I'd decided to try the master version and that worked for me.

Comment by karthik_ms on 2014-04-23:
I downloaded and compiled orocos_kdl separately and it now works. Thanks for the suggestion.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.