Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 906469 - media-gfx/kphotoalbum-5.10.0: lib/kpaexif/DatabaseElement.cpp:80:44: error: ‘class Exiv2::Exifdatum’ has no member named ‘toLong’
Summary: media-gfx/kphotoalbum-5.10.0: lib/kpaexif/DatabaseElement.cpp:80:44: error: ‘...
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: https://invent.kde.org/graphics/kphot...
Whiteboard:
Keywords: UPSTREAM
Depends on:
Blocks: exiv2-0.28
  Show dependency tree
 
Reported: 2023-05-15 19:38 UTC by Andreas Sturmlechner
Modified: 2023-07-12 21:06 UTC (History)
1 user (show)

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


Attachments
media-gfx:kphotoalbum-5.10.0:20230515-193323.log (media-gfx:kphotoalbum-5.10.0:20230515-193323.log,71.90 KB, text/plain)
2023-05-15 19:38 UTC, Andreas Sturmlechner
Details
Patch to make KPA compile with exiv2 0.28 (7361e53e743b0fb025e5e4b83ef8a2af4116da95.diff,5.60 KB, patch)
2023-06-08 18:56 UTC, Tobias Leupold
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Sturmlechner gentoo-dev 2023-05-15 19:38:25 UTC
Created attachment 861751 [details]
media-gfx:kphotoalbum-5.10.0:20230515-193323.log

> lib/kpaexif/DatabaseElement.cpp:80:44: error: ‘class Exiv2::Exifdatum’ has no member named ‘toLong’
>    80 |         return QVariant { (int)data[m_tag].toLong() };
>       |                                            ^~~~~~
> lib/kpaexif/DatabaseElement.cpp:80:53: error: no matching function for call to ‘QVariant::QVariant(<brace-enclosed initializer list>)’
>    80 |         return QVariant { (int)data[m_tag].toLong() };
>       |                                                     ^

...and so on.
Comment 1 Tobias Leupold 2023-05-20 19:51:51 UTC
I can't reprodice this ... I have KPA 5.10.0 installed, and I also just re-installed it without a problem.

Looks like some problem with exiv2? I have media-gfx/exiv2-0.27.6, the only not masked version?
Comment 2 Andreas Sturmlechner gentoo-dev 2023-05-20 19:53:20 UTC
Yeah sorry for not explaining it better, I was mass-filing exiv2-0.28 failures - this is why this bug is blocking bug 906463, our exiv2-0.28-breakage tracker.
Comment 3 Tobias Leupold 2023-05-20 19:57:55 UTC
Ah, okay. So we need to patch it for exiv2 0.28. Thanks for the info :-)
Comment 4 Tobias Leupold 2023-05-20 20:08:32 UTC
Okay. No quick fix. This specific issue can be resolved by using "toInt64" instead of "toLong".

But the next build failure to pop up is

/home/tobias/tmp/git/kphotoalbum/lib/kpaexif/Database.cpp:323:23: error: 'AutoPtr' is not a member of 'Exiv2::Image'

Seems like we'll have to put some work in this ;-) Thanks for pointing out the problem. I'll file an upstream bug to track this and inform you here as soon as we're done with it.
Comment 5 Andreas Sturmlechner gentoo-dev 2023-05-20 20:10:51 UTC
Thanks in advance.

For inspiration you can have a look at libkexvi2 fix:
https://invent.kde.org/graphics/libkexiv2/-/commit/68c21bba5f73ea6abfdf031139ed085251ef660d
Comment 6 Tobias Leupold 2023-05-20 20:46:27 UTC
Thanks for the additional info :-) I pushed a new branch tracking this that builds with exiv2 0.28: https://invent.kde.org/graphics/kphotoalbum/-/tree/exiv2-0.28

The new Exiv2::Image::UniquePtr and Exiv2::Image::AutoPtr macro switches could possibly simply be worked around by using "auto". For the "toLong()" thingy we need it though I think. However, this is only a detail.

I'll inform you as soon as somebody from the team reviewed this. Either we can add a Gentoo patch making it work with exiv2 0.28, or we simply include this in our next release. Whatever happens first (we're a bit slow with new releases recently ... ;-)
Comment 7 Tobias Leupold 2023-06-08 18:54:25 UTC
I just merged the patch branch. The changes can be found here: https://invent.kde.org/graphics/kphotoalbum/-/commit/7361e53e743b0fb025e5e4b83ef8a2af4116da95
Comment 8 Tobias Leupold 2023-06-08 18:56:13 UTC
Created attachment 863582 [details, diff]
Patch to make KPA compile with exiv2 0.28

If you're in a hurry (meaning you need it before our next release), here's the patch to make it work :-)
Comment 9 Larry the Git Cow gentoo-dev 2023-06-08 19:52:19 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5fcdd88ce2c60819bbd2fe42e11eeab640376d0a

commit 5fcdd88ce2c60819bbd2fe42e11eeab640376d0a
Author:     Andreas Sturmlechner <asturm@gentoo.org>
AuthorDate: 2023-06-08 19:48:08 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2023-06-08 19:48:08 +0000

    media-gfx/kphotoalbum: Fix build with >=exiv2-0.28
    
    Thanks-to: Tobias Leupold <tl@stonemx.de>
    Closes: https://bugs.gentoo.org/906469
    Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>

 .../files/kphotoalbum-5.10.0-exiv2-0.28.patch      | 147 +++++++++++++++++++++
 media-gfx/kphotoalbum/kphotoalbum-5.10.0.ebuild    |   2 +
 2 files changed, 149 insertions(+)
Comment 10 Tobias Leupold 2023-07-12 12:55:24 UTC
FYI: I just released KPA 5.11.0, which includes the exiv2 patch :-)
Comment 11 Andreas Sturmlechner gentoo-dev 2023-07-12 21:01:53 UTC
(In reply to Tobias Leupold from comment #10)
> FYI: I just released KPA 5.11.0, which includes the exiv2 patch :-)
Thanks, hereby bumped!
Comment 12 Tobias Leupold 2023-07-12 21:06:29 UTC
Nice, thanks for the quick follow-up!