Pretty sure this is nothing unknown for most of the readers, but as Kinetic release approach, will become more urgent.
[100%] Built target tabletop_object_ectomodule
In file included from /home/jorge/workspaces/ork/src/ork_tabletop/src/table/TableDetector.cpp:40:0:
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:134:5: error: ‘AlgorithmInfo’ does not name a type
AlgorithmInfo*
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:101:9: note: attribute for ‘class cv::RgbdNormals’ must follow the ‘class’ keyword
class RgbdNormals: public Algorithm
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:202:5: error: ‘AlgorithmInfo’ does not name a type
AlgorithmInfo*
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:172:9: note: attribute for ‘class cv::DepthCleaner’ must follow the ‘class’ keyword
class DepthCleaner: public Algorithm
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:315:5: error: ‘AlgorithmInfo’ does not name a type
AlgorithmInfo*
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:274:9: note: attribute for ‘class cv::RgbdPlane’ must follow the ‘class’ keyword
class RgbdPlane: public Algorithm
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:332:21: note: attribute for ‘struct cv::RgbdFrame’ must follow the ‘struct’ keyword
CV_EXPORTS struct RgbdFrame
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:351:21: note: attribute for ‘struct cv::OdometryFrame’ must follow the ‘struct’ keyword
CV_EXPORTS struct OdometryFrame : public RgbdFrame
^
In file included from /home/jorge/workspaces/ork/src/ork_tabletop/src/table/TableDetector.cpp:40:0:
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:390:20: note: attribute for ‘class cv::Odometry’ must follow the ‘class’ keyword
CV_EXPORTS class Odometry: public Algorithm
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:502:5: error: ‘AlgorithmInfo’ does not name a type
AlgorithmInfo*
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:480:20: note: attribute for ‘class cv::RgbdOdometry’ must follow the ‘class’ keyword
CV_EXPORTS class RgbdOdometry: public Odometry
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:551:5: error: ‘AlgorithmInfo’ does not name a type
AlgorithmInfo*
^
/opt/ros/indigo/include/opencv2/rgbd/rgbd.hpp:605:5: error: ‘AlgorithmInfo’ does not name a type
AlgorithmInfo*
^
/home/jorge/workspaces/ork/src/ork_tabletop/src/table/TableDetector.cpp: In member function ‘int tabletop::TableDetector::process(const ecto::tendrils&, const ecto::tendrils&)’:
/home/jorge/workspaces/ork/src/ork_tabletop/src/table/TableDetector.cpp:161:20: error: ‘class cv::RgbdPlane’ has no member named ‘set’
plane_finder.set("threshold", *plane_threshold_);
^
/home/jorge/workspaces/ork/src/ork_tabletop/src/table/TableDetector.cpp:162:20: error: ‘class cv::RgbdPlane’ has no member named ‘set’
plane_finder.set("min_size", int(*min_table_size_));
^
/home/jorge/workspaces/ork/src/ork_tabletop/src/table/TableDetector.cpp:163:20: error: ‘class cv::RgbdPlane’ has no member named ‘set’
plane_finder.set("sensor_error_a", 0.0075);
^
make[2]: *** [ork_tabletop/src/table/CMakeFiles/tabletop_table_ectomodule.dir/TableDetector.cpp.o] Error 1
make[1]: *** [ork_tabletop/src/table/CMakeFiles/tabletop_table_ectomodule.dir/all] Error 2
make: *** [all] Error 2
Invoking "make" failed
So I suppose the code must be patched with alternative versions with:
#if CV_VERSION_MAJOR == 3
< something for OpenCV3 >
#else
< something else for OpenCV2 >
#endif
as other ORK modules, right? If not, current code will not compile on Kinetic, I suppose.
Hi, this is normal as opencv_candidate has been compiled with OpenCV2. You should have it be part of your workspace. I added your case to the FAQ at http://wiki.ros.org/opencv3#Usage
Pretty sure this is nothing unknown for most of the readers, but as Kinetic release approach, will become more urgent.
So I suppose the code must be patched with alternative versions with:
as other ORK modules, right? If not, current code will not compile on Kinetic, I suppose.