Opened 9 years ago

Last modified 8 years ago

#48081 new defect

digikam @4.9.0: build fails after upgrade to opencv 3.0.0 due to API/header changes

Reported by: dbevans (David B. Evans) Owned by: jgosmann (Jan Gosmann)
Priority: Normal Milestone:
Component: ports Version: 2.3.3
Keywords: Cc: cgilles (HumanDynamo), stromnov (Andrey Stromnov), ryandesign (Ryan Carsten Schmidt), mkae (Marko Käning), SickTeddyBear, Greisby (Greisberger Christophe), roeber@…, hubsif, damian.philipp@…, etienne.bretteville@…, robogeek (David Herron), sinkva@…, juhamleino@…, bernard.meunier@…, nich@…, macports.mexon@…, terryw345@…, jkharrell@…, himself@…, omoikane@…
Port: digikam

Description

Build fails as follows

:info:build /opt/local/bin/moc -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/build/core/app -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/build/extra/libkface -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/build/extra/libkgeomap -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/build/core/app/utils -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/build/core/app/database -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/extra/libkface -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/extra/libkgeomap -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/album -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/database -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/date -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/dragdrop -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/filters -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/items -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/items/overlays -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/main -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/fileaction -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/tags -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/tags/tagsmanager -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/tags/tagsmanager/models -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/utils -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/settings -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/views -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/app/views/tableview -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins/color -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins/decorate -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins/enhance -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins/enhance/hotpixels -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins/filters -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/imageplugins/transform -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/kioslave -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/dklcms -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/3rdparty/cimg -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/3rdparty/kmemoryinfo -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/3rdparty/kinotify -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/database -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/database/core -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/database/haar -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/database/imgqsort -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/database/imagehistory -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/database/faces -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/dialogs -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/core/libs/dimg -I/opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/wo
:info:build In file included from /opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/extra/libkface/libkface/facedetector.cpp:29:
:info:build In file included from /opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/digikam-4.9.0/extra/libkface/libkface/detection/opencvfacedetector.h:40:
:info:build /opt/local/var/macports/build/_opt_macports_trunk_dports_kde_digikam/digikam/work/build/extra/libkface/libkface/libopencv.h:55:10: fatal error: 'opencv2/core/internal.hpp' file not found
:info:build #include <opencv2/core/internal.hpp>
:info:build          ^

Full build log attached.

See OpenCV Transition Guide for further API information.

See also #47772.

Attachments (2)

main.log (13.1 MB) - added by dbevans (David B. Evans) 9 years ago.
Build log showing failure when building with opencv 3.0.0
digikam.diff (7.3 KB) - added by RJVB (René Bertin) 8 years ago.
diff against current digiKam portfile

Change History (37)

Changed 9 years ago by dbevans (David B. Evans)

Attachment: main.log added

Build log showing failure when building with opencv 3.0.0

comment:1 Changed 9 years ago by dbevans (David B. Evans)

Has duplicate #48082

comment:2 Changed 9 years ago by mkae (Marko Käning)

Cc: mk@… added

Cc Me!

comment:3 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Has duplicate #48122.

comment:4 Changed 9 years ago by SickTeddyBear

Cc: amcgee@… added

Cc Me!

comment:5 Changed 9 years ago by Greisby (Greisberger Christophe)

Cc: greisberger@… added

Cc Me!

comment:6 Changed 9 years ago by pasnox@…

Cc: pasnox@… added

Cc Me!

comment:7 Changed 9 years ago by roeber@…

Cc: roeber@… added

Cc Me!

comment:8 Changed 9 years ago by hubsif

Cc: hubsif@… added

Cc Me!

comment:9 Changed 9 years ago by damian.philipp@…

Cc Me!

comment:10 in reply to:  9 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: damian.philipp@… added

Replying to damian.philipp@…:

Cc Me!

To Cc yourself, you have to click the "CcMe!" button at the top of the ticket. I've Cc'd you now.

comment:11 Changed 9 years ago by damian.philipp@…

Thank you. I was looking for that button, but apparently have been struck by momentary selective blindness.

To add something to this topic: I adapted the Portfile to download digikam 4.11.0. While that didn't compile either, it seemed to advance further, so possibly the opencv-issue has been resolved in that revision.

comment:12 Changed 9 years ago by cgilles (HumanDynamo)

No 4.11 do not fix this issue. And next 4.12.0 too...

We have an UPSTREAM report in KDE bugzilla :

https://bugs.kde.org/show_bug.cgi?id=349601

OpenCV 3.0 break API compatibility a lots . We use OpenCV in face detection, Red eyes correction, Noise detection, Image quality detector, etc... So many place to adapt and test want mean a lots of time to fix.

OpenCV 2.4.11 is the right one to use, as i do in my digiKam PKG builder :

https://projects.kde.org/projects/extragear/graphics/digikam/digikam-software-compilation/repository/revisions/master/entry/project/macosx/common/common.sh#L230

Gilles caulier

comment:13 Changed 9 years ago by etienne.bretteville@…

Same here on 10.10.5, any update soon to the .pkg, I really want digicam on OS X. If I can help, do not hesitate to ask.

Last edited 9 years ago by etienne.bretteville@… (previous) (diff)

comment:14 Changed 9 years ago by etienne.bretteville@…

Cc: etienne.bretteville@… added

Cc Me!

comment:15 Changed 9 years ago by robogeek (David Herron)

Cc: david@… added

Cc Me!

comment:16 Changed 9 years ago by sinkva@…

Cc: sinkva@… added

Cc Me!

comment:17 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: juhamleino@… added

Has duplicate #49768.

comment:18 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: bernard.meunier@… added

Has duplicate #50113.

comment:19 Changed 9 years ago by mkae (Marko Käning)

Actually, all one would need to do is to simply create a subport opencv2 (representing the last functional state of version 2 shipped earlier by MacPorts) and then make DigiKam depend on it.

comment:20 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

But one would want to make such a hypothetical opencv2 port not conflict with the existing opencv port (i.e. install files to a different place), and make digikam aware of where the files then are.

There appear to be commits referenced in the upstream bug report which add opencv 3 support.

comment:21 Changed 9 years ago by mkae (Marko Käning)

Yes, Ryan, that would be the ideal solution, of course!

I admit that my suggested approach would be rather quick-and-dirty.

Yes, [https://bugs.kde.org/show_bug.cgi?id=349601#c47 this comment claims that in 4.14 opencv3 support got added, right!

Version 1, edited 9 years ago by mkae (Marko Käning) (previous) (next) (diff)

comment:22 Changed 9 years ago by bernard.meunier@…

Surrely very intersting, but I haven't understood what I should do to resolve my problem.

Someboby can help me !

Thank a lot

comment:23 Changed 9 years ago by cgilles (HumanDynamo)

digiKam macports package need to be update to last 4.14.0.

OpenCV is used into:

  • libkface (published through from kdegraphics/libs not digiKAm tarball since 4.14.0)
  • digiKam core.

Both have a same cmake flag to switch between OpenCV 2 or OpenCV 3, as you want.

Look in README files for details.

Gilles Caulier

comment:24 Changed 9 years ago by nich@…

Cc: nich@… added

Cc Me!

comment:25 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: macports.mexon@… added

Has duplicate #51261.

comment:26 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: terryw345@… added

Has duplicate #51299.

comment:27 in reply to:  23 Changed 9 years ago by terryw345@…

Replying to caulier.gilles@…:

digiKam macports package need to be update to last 4.14.0.

OpenCV is used into:

  • libkface (published through from kdegraphics/libs not digiKAm tarball since 4.14.0)
  • digiKam core.

Both have a same cmake flag to switch between OpenCV 2 or OpenCV 3, as you want.

Look in README files for details.

Gilles Caulier

Am I to understand that with digikam 4.14 a build with this problem has been resolved, or is the issue still under investigation?

comment:28 Changed 9 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: jkharrell@… added

Has duplicate #51394.

comment:29 Changed 8 years ago by himself@…

Cc: himself@… added

Cc Me!

comment:30 Changed 8 years ago by ryandesign (Ryan Carsten Schmidt)

Cc: omoikane@… added

Has duplicate #51977.

comment:31 Changed 8 years ago by omoikane@…

Cc: omoikane@… removed

Cc Me!

comment:32 Changed 8 years ago by omoikane@…

Cc: omoikane@… added

Cc Me!

Changed 8 years ago by RJVB (René Bertin)

Attachment: digikam.diff added

diff against current digiKam portfile

comment:33 Changed 8 years ago by RJVB (René Bertin)

I've attached a diff against the current digiKam portfile that brings port:digikam to v4.14.0 . This worked for me (in my personal "MacStrop" ports tree); let me know if there are issues with it.

comment:34 Changed 8 years ago by mf2k (Frank Schima)

Some comments on your patch:

  • The revision line should be deleted because it starts at 0 when increasing the version and that is the default value.
  • Do not modify the # $Id: line. It may mean you have edited on old version of the Portfile.

comment:35 Changed 8 years ago by pasnox@…

Cc: pasnox@… removed

Cc Me!

Note: See TracTickets for help on using tickets.