Bug 402564 - kphotoalbum fails to build against >=exiv2-0.27
Summary: kphotoalbum fails to build against >=exiv2-0.27
Status: RESOLVED FIXED
Alias: None
Product: kphotoalbum
Classification: Applications
Component: EXIF viewer/search (other bugs)
Version First Reported In: GIT master
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: KPhotoAlbum Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-12-25 20:41 UTC by Andreas Sturmlechner
Modified: 2018-12-31 21:51 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments
cmake.patch (1.75 KB, patch)
2018-12-25 20:41 UTC, Andreas Sturmlechner
Details
build.log (1.08 MB, text/x-log)
2018-12-25 20:43 UTC, Andreas Sturmlechner
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Andreas Sturmlechner 2018-12-25 20:41:42 UTC
Created attachment 117105 [details]
cmake.patch

Using the attached patch to fix detecting the new version fails later during merge.
Comment 1 Andreas Sturmlechner 2018-12-25 20:43:40 UTC
Created attachment 117106 [details]
build.log

/usr/lib/gcc/x86_64-pc-linux-gnu/8.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: CMakeFiles/kphotoalbum.dir/Exif/DatabaseElement.cpp.o: in function `Exif::LensExifElement::valueFromExif(Exiv2::ExifData&) const [clone .cold.34]':
DatabaseElement.cpp:(.text.unlikely+0x26e): undefined reference to `Exiv2::ExifKey::~ExifKey()'
collect2: error: ld returned 1 exit status
Comment 2 Johannes Zarl-Zierl 2018-12-29 16:47:38 UTC
Thanks for the bug report!

Exiv2 0.27 is not yet supported by kphotoalbum.

As you discovered yourself, not only the CMake package has changed, but there have been significant changes in the API for version 0.27. Mostly, this is for the better, but we still have to figure out a way to properly support both the old and new API for the time being.

Also, version 0.27 has not even landed in most distros yet.
Comment 3 Andreas Sturmlechner 2018-12-29 19:21:00 UTC
Yes, I'm aware of that. ;) Basically exiv2-0.27 support is already done in most kde.org packages depending on it (in progress with libkexiv2), porting was easy in most of them. We should make sure kphotoalbum does not stay behind in 0.27 adoption considering the ton of bug and security bugfixes that many distros probably did not yet backport to their 0.26 package.
Comment 4 Tobias Leupold 2018-12-29 19:25:05 UTC
Johannes' distro doesn't even have the respective library and here on Gentoo, it's there but hard masked. As soon as we can install it without f**ing up our system, we will port the codebase ;-)
Comment 5 Andreas Sturmlechner 2018-12-30 00:12:51 UTC
(In reply to Tobias Leupold from comment #4)
> and here on Gentoo, it's there but hard masked. As soon as we can install it
> without f**ing up our system, we will port the codebase ;-)
You are very much invited to unmask it. ;) I think I've fixed all packages except Gnome related ones. We can't lift the mask until kphotoalbum is fixed.
Comment 6 Johannes Zarl-Zierl 2018-12-30 00:25:08 UTC
Now if *that* isn't a good motivation ;-)
I have started a feature branch for it, but the system installation of Exiv2 0.25 interferes with my local installation. I'm tired now - I'll debug my build problems tomorrow(ish)...
Comment 7 Tobias Leupold 2018-12-30 09:09:21 UTC
Okay, with the blessings of a Gentoo dev (obviously), I'm out of excuses now ;-) I'll try it asap!
Comment 8 Andreas Sturmlechner 2018-12-30 15:16:36 UTC
For similar fix in gwenview wrt autoPtr, see also: https://phabricator.kde.org/D17872
Comment 9 Tobias Leupold 2018-12-31 09:16:35 UTC
Johannes pushed a branch fixing the compilation that – on Gentoo – works fine both with exiv2-0.26 and 0.27. Perhaps, we can add a 4.5-r1 ebuild for Gentoo including the (surprisingly small) patch so that you can remove the hard mask?

Here's the branch: https://cgit.kde.org/kphotoalbum.git/log/?h=feature/exiv2-0.27-v2
Comment 10 Johannes Zarl-Zierl 2018-12-31 09:23:19 UTC
Tobias: thanks for testing. I'll merge it to master later today...
Comment 11 Johannes Zarl-Zierl 2018-12-31 09:23:20 UTC
Tobias: thanks for testing. I'll merge it to master later today...
Comment 12 Johannes Zarl-Zierl 2018-12-31 11:00:23 UTC
Git commit 0c127728a20cef252ece2125ef1c14975f96bfbd by Johannes Zarl-Zierl.
Committed on 31/12/2018 at 10:59.
Pushed by johanneszarl into branch 'master'.

Merge branch 'feature/exiv2-0.27-v2'


https://commits.kde.org/kphotoalbum/0c127728a20cef252ece2125ef1c14975f96bfbd
Comment 13 Andreas Sturmlechner 2018-12-31 17:19:34 UTC
Indeed, merged fine, thanks!
Comment 14 Andreas Sturmlechner 2018-12-31 21:21:03 UTC
Fix was(In reply to Tobias Leupold from comment #9)
> Perhaps, we can add a 4.5-r1 ebuild for Gentoo including the (surprisingly
> small) patch so that you can remove the hard mask?
Patch was added to 4.5-r0 as-is, no need for new stabilisation. ;)
Comment 15 Tobias Leupold 2018-12-31 21:51:15 UTC
Even nicer ;-)