Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 600238 - kde-apps/libkface-16.08.3 error: ‘void KFaceIface::LBPHFaceRecognizer::predict(cv::InputArray, cv::Ptr<cv::face::PredictCollector>, int) const’ marked override, but does not override
Summary: kde-apps/libkface-16.08.3 error: ‘void KFaceIface::LBPHFaceRecognizer::predic...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo KDE team
URL:
Whiteboard:
Keywords:
: 600640 (view as bug list)
Depends on:
Blocks:
 
Reported: 2016-11-19 16:51 UTC by Frank Krömmelbein
Modified: 2016-11-26 18:18 UTC (History)
4 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,33.49 KB, text/x-log)
2016-11-19 16:51 UTC, Frank Krömmelbein
Details
Modified patch (libkface-15.12.2-opencv3.1.patch,5.92 KB, patch)
2016-11-21 22:17 UTC, alexandrl
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Frank Krömmelbein 2016-11-19 16:51:50 UTC
Created attachment 453780 [details]
build.log

Update of libkface fails for me:
[ebuild     U ~] kde-apps/libkface-16.08.3:5::gentoo [16.08.2:5::gentoo] USE="-debug" 0 KiB


cognition-opencv-lbph/facerec_borrowed.cpp.o -c /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp
In file included from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/lbphfacemodel.h:44:0,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/lbphfacemodel.cpp:30:
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.h:144:10: error: ‘void KFaceIface::LBPHFaceRecognizer::predict(cv::InputArray, cv::Ptr<cv::face::PredictCollector>, int) const’ marked override, but does not override
     void predict(cv::InputArray src, cv::Ptr<cv::face::PredictCollector> collector, const int state = 0) const override;
          ^
src/CMakeFiles/KF5KFace.dir/build.make:86: recipe for target 'src/CMakeFiles/KF5KFace.dir/recognition-opencv-lbph/lbphfacemodel.cpp.o' failed
make[2]: *** [src/CMakeFiles/KF5KFace.dir/recognition-opencv-lbph/lbphfacemodel.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
In file included from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:41:0:
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.h:144:10: error: ‘void KFaceIface::LBPHFaceRecognizer::predict(cv::InputArray, cv::Ptr<cv::face::PredictCollector>, int) const’ marked override, but does not override
     void predict(cv::InputArray src, cv::Ptr<cv::face::PredictCollector> collector, const int state = 0) const override;
          ^
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp: In member function ‘void KFaceIface::LBPHFaceRecognizer::predict(cv::InputArray, cv::Ptr<cv::face::PredictCollector>, int) const’:
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:407:52: error: no matching function for call to ‘cv::face::PredictCollector::init(int, const int&)’
     collector->init((int)m_histograms.size(), state);
                                                    ^
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:407:52: note: candidate is:
In file included from /usr/include/opencv2/face.hpp:51:0,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3_build/src/libopencv.h:59,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.h:39,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:41:
/usr/include/opencv2/face/predict_collector.hpp:69:18: note: virtual void cv::face::PredictCollector::init(size_t)
     virtual void init(size_t size) { (void)size; }
                  ^
/usr/include/opencv2/face/predict_collector.hpp:69:18: note:   candidate expects 1 argument, 2 provided
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:427:29: error: ‘class cv::face::PredictCollector’ has no member named ‘emit’
             if (!collector->emit(label, dist, state))
                             ^
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:473:29: error: ‘class cv::face::PredictCollector’ has no member named ‘emit’
             if (!collector->emit(it->first, mean, state))
                             ^
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:526:29: error: ‘class cv::face::PredictCollector’ has no member named ‘emit’
             if (!collector->emit(it->first, -score, state))
                             ^
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp: In static member function ‘static cv::Ptr<KFaceIface::LBPHFaceRecognizer> KFaceIface::LBPHFaceRecognizer::create(int, int, int, int, double, KFaceIface::LBPHFaceRecognizer::PredictionStatistics)’:
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:553:115: error: invalid new-expression of abstract class type ‘KFaceIface::LBPHFaceRecognizer’
     LBPHFaceRecognizer* const fr = new LBPHFaceRecognizer(radius, neighbors, grid_x, grid_y, threshold, statistics);
                                                                                                                   ^
In file included from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:41:0:
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.h:51:7: note:   because the following virtual functions are pure within ‘KFaceIface::LBPHFaceRecognizer’:
 class LBPHFaceRecognizer : public cv::face::FaceRecognizer
       ^
In file included from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3_build/src/libopencv.h:59:0,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.h:39,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.cpp:41:
/usr/include/opencv2/face.hpp:307:46: note:     virtual void cv::face::FaceRecognizer::predict(cv::InputArray, cv::Ptr<cv::face::PredictCollector>) const
     CV_WRAP_AS(predict_collect) virtual void predict(InputArray src, Ptr<PredictCollector> collector) const = 0;
                                              ^
In file included from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/lbphfacemodel.h:44:0,
                 from /var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/opencvlbphfacerecognizer.cpp:37:
/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3/src/recognition-opencv-lbph/facerec_borrowed.h:144:10: error: ‘void KFaceIface::LBPHFaceRecognizer::predict(cv::InputArray, cv::Ptr<cv::face::PredictCollector>, int) const’ marked override, but does not override
     void predict(cv::InputArray src, cv::Ptr<cv::face::PredictCollector> collector, const int state = 0) const override;
          ^
src/CMakeFiles/KF5KFace.dir/build.make:110: recipe for target 'src/CMakeFiles/KF5KFace.dir/recognition-opencv-lbph/opencvlbphfacerecognizer.cpp.o' failed
make[2]: *** [src/CMakeFiles/KF5KFace.dir/recognition-opencv-lbph/opencvlbphfacerecognizer.cpp.o] Error 1
src/CMakeFiles/KF5KFace.dir/build.make:134: recipe for target 'src/CMakeFiles/KF5KFace.dir/recognition-opencv-lbph/facerec_borrowed.cpp.o' failed
make[2]: *** [src/CMakeFiles/KF5KFace.dir/recognition-opencv-lbph/facerec_borrowed.cpp.o] Error 1
make[2]: Leaving directory '/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3_build'
CMakeFiles/Makefile2:173: recipe for target 'src/CMakeFiles/KF5KFace.dir/all' failed
make[1]: *** [src/CMakeFiles/KF5KFace.dir/all] Error 2
make[1]: Leaving directory '/var/tmp/portage/kde-apps/libkface-16.08.3/work/libkface-16.08.3_build'
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

It looks like it's a problem with opencv:

[ebuild   R   ~] media-libs/opencv-3.1.0-r6:0/3.1::gentoo  USE="contrib eigen ffmpeg gphoto2 jpeg opencl opengl openmp png python qt5 tesseract tiff v4l vaapi webp -contrib_cvv -contrib_hdf -contrib_sfm -cuda -examples -gdal -gflags -glog -gstreamer -gtk -ieee1394 (-ipp) -java -jpeg2k -libav -openexr (-pch) -testprograms -threads -vtk -xine" PYTHON_TARGETS="python2_7 python3_4 -python3_5" 0 KiB
Comment 1 Jam 2016-11-21 17:08:11 UTC
I can confirm the issue.
The build-log is exactly the same.
Comment 2 alexandrl 2016-11-21 22:17:30 UTC
Created attachment 454004 [details, diff]
Modified patch

This patch work for me.
Comment 3 Andreas Sturmlechner gentoo-dev 2016-11-24 07:22:02 UTC
*** Bug 600640 has been marked as a duplicate of this bug. ***
Comment 4 Felix Tiede 2016-11-24 08:29:42 UTC
(In reply to alexandrl from comment #2)
> Created attachment 454004 [details, diff] [details, diff]
> Modified patch
> 
> This patch work for me.

Works for me too.
Comment 5 Andreas Sturmlechner gentoo-dev 2016-11-26 10:52:18 UTC
Both

kde-apps/libkface-16.04.3
kde-apps/libkface-16.08.3

definitely build fine against media-libs/opencv-3.1.0-r4, I just tested on a slightly outdated box. Not being up to date with opencv right now, what has changed in the recent revisions? New contrib tarball?
Comment 6 Amy Liffey gentoo-dev 2016-11-26 11:09:03 UTC
(In reply to Andreas Sturmlechner from comment #5)
> Both
> 
> kde-apps/libkface-16.04.3
> kde-apps/libkface-16.08.3
> 
> definitely build fine against media-libs/opencv-3.1.0-r4, I just tested on a
> slightly outdated box. Not being up to date with opencv right now, what has
> changed in the recent revisions? New contrib tarball?

Yes contrib tarball was changed updated to more recent version.
Comment 8 Andreas Sturmlechner gentoo-dev 2016-11-26 18:18:43 UTC
Thanks for the reports and patch! Fixed in git with commit 477212f2d5063ef80d401d94ea2f68bb402a7e3d