[ros-users] pcl_ros failing to compile

Radu Bogdan Rusu rusu at willowgarage.com
Thu Feb 24 17:19:24 UTC 2011


Aaron,

How are you installing ROS? It seems that there are problems in the way you are getting the distribution/stacks to mix 
with each other. ;)

Can you please try a clean install using diamondback for example? There should be absolutely no problems with compiling 
stuff if you do it this way.

PS. https://code.ros.org/svn/ros-pkg/stacks/geometry/tags/latest/eigen is really old as far as I know and should _not_ 
be used! That's Eigen version 2.0.10 :)

Cheers,
Radu.
--
http://pointclouds.org

On 02/24/2011 08:23 AM, Aaron Solochek wrote:
> You were correct.  I had an older pcl sitting around.
>
> However now I'm running into problems with Eigen.  Where should I be grabbing
> Eigen to build trunk pcl?
>
> I was getting it from
> https://code.ros.org/svn/ros-pkg/stacks/geometry/tags/latest/eigen, but I'm
> getting this error:
>
> /home/aarons/ros/pkgs/geometry/eigen/include/Eigen/src/Core/Assign.h:447:
> instantiated from ‘static Derived&  Eigen::ei_assign_selector<Derived,
> OtherDerived, false, false>::run(Derived&, const OtherDerived&) [with Derived =
> Eigen::Matrix<float, 3, 1, 2, 3, 1>, OtherDerived = Eigen::Map<const
> Eigen::Matrix<float, 3, 1, 2, 3, 1>, 1>]’
>    /home/aarons/ros/pkgs/geometry/eigen/include/Eigen/src/Core/Matrix.h:554:
> instantiated from ‘Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows,
> _MaxCols>&  Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows,
> _MaxCols>::_set_noalias(const Eigen::MatrixBase<OtherDerived>&) [with
> OtherDerived = Eigen::Map<const Eigen::Matrix<float, 3, 1, 2, 3, 1>, 1>, _Scalar
> = float, int _Rows = 3, int _Cols = 1, int _Options = 2, int _MaxRows = 3, int
> _MaxCols = 1]’
>    /home/aarons/ros/pkgs/geometry/eigen/include/Eigen/src/Core/Matrix.h:408:
> instantiated from ‘Eigen::Matrix<_Scalar, _Rows, _Cols, _Options, _MaxRows,
> _MaxCols>::Matrix(const Eigen::MatrixBase<OtherDerived>&) [with OtherDerived =
> Eigen::Map<const Eigen::Matrix<float, 3, 1, 2, 3, 1>, 1>, _Scalar = float, int
> _Rows = 3, int _Cols = 1, int _Options = 2, int _MaxRows = 3, int _MaxCols = 1]’
>
> /home/aarons/ros/pkgs/perception_pcl/pcl/src/pcl/range_image/range_image.hpp:878:
>   instantiated from here
>    /home/aarons/ros/pkgs/geometry/eigen/include/Eigen/src/Core/Assign.h:428:
> error: ‘YOU_MIXED_MATRICES_OF_DIFFERENT_SIZES’ is not a member of
> ‘Eigen::ei_static_assert<false>’
>
> Thanks.
>
> -Aaron
>
> On 02/22/2011 07:55 PM, Radu Bogdan Rusu wrote:
>> Aaron,
>>
>> I bet what's happening is that your system has different versions of pcl installed (one from debs maybe and one from
>> source - and the debs one is set ahead in your ROS_PACKAGE_PATH?).
>>
>> The best thing to do is make sure that roscd pcl and roscd pcl_ros go to the right directories. The code should
>> definitely work. Also, are you on cturtle, unstable, or diamondback?
>>
>> PS. As always, pcl-users@ is a better forum for PCL questions as we can archive them and have them consistent in one
>> place. Thanks! :)
>>
>> Cheers,
>> Radu.
>> --
>> http://pointclouds.org
>>
>> On 02/22/2011 02:48 PM, Aaron Solochek wrote:
>>> Is anyone else getting this?  I just checked out the latest perception_pcl
>>> stack, and pcl_ros is failing to build:
>>>
>>>    /home/aarons/ros/pkgs/perception_pcl/pcl_ros/src/pcl_ros/features/boundary.cpp:66: error: request for member ‘setInputNormals’ in ‘((pcl_ros::BoundaryEstimation*)this)->pcl_ros::BoundaryEstimation::impl_’, which is of non-class type ‘int’
>>>
>>> /home/aarons/ros/pkgs/perception_pcl/pcl_ros/src/pcl_ros/features/boundary.cpp:66:
>>> error: ‘normals’ was not declared in this scope
>>>
>>> /home/aarons/ros/pkgs/perception_pcl/pcl_ros/src/pcl_ros/features/boundary.cpp:69:
>>> error: request for member ‘compute’ in
>>> ‘((pcl_ros::BoundaryEstimation*)this)->pcl_ros::BoundaryEstimation::impl_’,
>>> which is of non-class type ‘int’
>>>
>>> /home/aarons/ros/pkgs/perception_pcl/pcl_ros/src/pcl_ros/features/boundary.cpp:72:
>>> error: request for member ‘header’ in ‘output’, which is of non-class type ‘int’
>>>
>>> /home/aarons/ros/pkgs/perception_pcl/pcl_ros/src/pcl_ros/features/boundary.cpp:73:
>>> error: ‘pub_output_’ was not declared in this scope
>>>
>>> /home/aarons/ros/pkgs/perception_pcl/pcl_ros/src/pcl_ros/features/boundary.cpp:73:
>>> error: request for member ‘makeShared’ in ‘output’, which is of non-class type ‘int’
>>>     In file included from
>>> /home/aarons/ros/pkgs/common/pluginlib/include/Poco/Manifest.h:44,
>>>
>>>
>>> It's possible my environment is strange, but I can't think of what would be
>>> causing this.  Indeed setInputNormals is not a member of the FeatureFromNormals
>>> from pcl_ros.  It is in the FeatureFromNormals class in pcl, for whatever that's
>>> worth.
>>>
>>> Any pointers on getting this built would be appreciated.
>>>
>>> Thanks.
>>>
>>> -Aaron
>>>
>>> _______________________________________________
>>> ros-users mailing list
>>> ros-users at code.ros.org
>>> https://code.ros.org/mailman/listinfo/ros-users
>> _______________________________________________
>> ros-users mailing list
>> ros-users at code.ros.org
>> https://code.ros.org/mailman/listinfo/ros-users
>>
>> !DSPAM:4d645afa154407704318549!
>>
>
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users



More information about the ros-users mailing list