Discussion:
[KPhotoAlbum] problems compiling KPA on Ubuntu 16.4 (LTS)
Andreas Schleth
2017-01-23 21:16:05 UTC
Permalink
Hi Johannes,

in your build instructions you mention "Ubuntu" without naming a release ...

My daughter is trying to install KPA on a freshly installed Ubuntu 16.4
LTS and has a few problems - see attachments. The build fails when
trying to use a QT function that was introduced in QT 5.6. Is there an
easy way to fix this?

Or, alternative solution: which is the latest version that compiles on 16.4?

Andreas











Crazy shit! Weißt du, warum ich kphotoalbum nicht kompilieren konnte? In
Ubuntu 16.04 ist eine veraltete Version von Qt installiert, die bei
einer Klasse eine Methode nicht kennt... Ich konnte Qt 5.6 manuell
nachinstallieren, aber der Fehler ist immer noch da. Ich suche mir mal
eine Àltere Ausgabe von kphotoalbum.

G
Tobias Leupold
2017-01-26 10:00:16 UTC
Permalink
Hi Andreas!

Version 5.0.1 didn't have this code yet; it would be a bad idea to build this
version though, because we fixed a lot of (porting) bugs and regressions with
5.1.

If you can't update to a more recent Qt version, probably, you can try to
build the lastest KDE4 version of KPA? You'll probably get less bugs there.

But the real question is: why is there no packaged KPA on Ubuntu you can use
as-is?

Cheers,
Tobias
Post by Andreas Schleth
Hi Johannes,
in your build instructions you mention "Ubuntu" without naming a release ...
My daughter is trying to install KPA on a freshly installed Ubuntu 16.4
LTS and has a few problems - see attachments. The build fails when
trying to use a QT function that was introduced in QT 5.6. Is there an
easy way to fix this?
Or, alternative solution: which is the latest version that compiles on 16.4?
Andreas
Johannes Zarl-Zierl
2017-01-26 19:42:01 UTC
Permalink
Hi,
Post by Tobias Leupold
But the real question is: why is there no packaged KPA on Ubuntu you can use
as-is?
A good question indeed ;-)

As far as I know there used to be a well-maintained KPhotoAlbum PPA for
Ubuntu. I don't use Ubuntu myself, which leads me to the question:

Does anyone know the status of that package archive?

Cheers,
Johannes
Johannes Zarl-Zierl
2017-01-26 19:35:05 UTC
Permalink
Hi Andreas,
Post by Andreas Schleth
My daughter is trying to install KPA on a freshly installed Ubuntu 16.4
LTS and has a few problems - see attachments. The build fails when
trying to use a QT function that was introduced in QT 5.6. Is there an
easy way to fix this?
I was just about to reply that Ubuntu LTS warrants a backport from my point of
view, but then I realized that I can make the code compatible with Qt 5.5 and
make it better at the same time ;-)

Could you or your daughter try the current git master (commit 53aa2d91 or
later)?

Cheers,
Johannes
Andreas Schleth
2017-01-26 21:03:34 UTC
Permalink
Hi Johannes & Tobias,

thanks for the input. I just did a quick test and found the latest
version to be compilable and working - as far as I can tell with 5 quick
clicks.
So I will see what my daughter (500 km away) will manage and report on
her progress.

On a very different track: Just this week I had to fire up my old trusty
VM with opensuse 11.2 and KPA 4.1.7 to do some time shifting on scanned
slides:
a) this did work nicely with my most recent database and the database
was still OK when viewed in KPA 5.x. This is quite remarkable!
b) when using the ancient version I presently noted the different (and
better) placement of the lens on the timeline: default position on most
recent images and not (as of now) on the oldest. hint, hint ;-)

Cheers, Andreas
Post by Johannes Zarl-Zierl
Hi Andreas,
Post by Andreas Schleth
My daughter is trying to install KPA on a freshly installed Ubuntu 16.4
LTS and has a few problems - see attachments. The build fails when
trying to use a QT function that was introduced in QT 5.6. Is there an
easy way to fix this?
I was just about to reply that Ubuntu LTS warrants a backport from my point of
view, but then I realized that I can make the code compatible with Qt 5.5 and
make it better at the same time ;-)
Could you or your daughter try the current git master (commit 53aa2d91 or
later)?
Cheers,
Johannes
_______________________________________________
KPhotoAlbum mailing list
https://mail.kdab.com/mailman/listinfo/kphotoalbum
Johannes Zarl-Zierl
2017-01-26 21:36:25 UTC
Permalink
Hi Andreas,
Post by Andreas Schleth
On a very different track: Just this week I had to fire up my old trusty
VM with opensuse 11.2 and KPA 4.1.7 to do some time shifting on scanned
a) this did work nicely with my most recent database and the database
was still OK when viewed in KPA 5.x. This is quite remarkable!
We try hard not to break things too often ;-)
Post by Andreas Schleth
b) when using the ancient version I presently noted the different (and
better) placement of the lens on the timeline: default position on most
recent images and not (as of now) on the oldest. hint, hint ;-)
I know, I know - I have a single image from the early 1900s, which reminds me
of this issue every time I start up kpa...

Cheers,
Johannes
Andreas Schleth
2017-01-29 16:15:28 UTC
Permalink
Hi everybody,

here is an update (belatedly due to pressing other business). The build
with recent git master does not stop at 12% but progresses to 60% ...

----
[ 59%] Building CXX object
CMakeFiles/kphotoalbum.dir/AnnotationDialog/ImagePreviewWidget.cpp.o
/home/gesine/Downloads/kphotoalbum/AnnotationDialog/Dialog.cpp: In
member function ‘void AnnotationDialog::Dialog::loadWindowLayout()’:
/home/gesine/Downloads/kphotoalbum/AnnotationDialog/Dialog.cpp:1242:23:
error: ‘class QMainWindow’ has no member named ‘resizeDocks’
m_dockWindow->resizeDocks({m_generalDock,
m_descriptionDock},{60,100}, Qt::Vertical);
^
/home/gesine/Downloads/kphotoalbum/AnnotationDialog/Dialog.cpp:1244:23:
error: ‘class QMainWindow’ has no member named ‘resizeDocks’
m_dockWindow->resizeDocks({m_generalDock, m_descriptionDock,
m_previewDock},{200,200,800}, Qt::Horizontal);
^
CMakeFiles/kphotoalbum.dir/build.make:3374: die Regel für Ziel
„CMakeFiles/kphotoalbum.dir/AnnotationDialog/Dialog.cpp.o“ scheiterte
make[2]: *** [CMakeFiles/kphotoalbum.dir/AnnotationDialog/Dialog.cpp.o]
Fehler 1
make[2]: *** Auf noch nicht beendete Prozesse wird gewartet …
CMakeFiles/Makefile2:136: die Regel für Ziel
„CMakeFiles/kphotoalbum.dir/all“ scheiterte
make[1]: *** [CMakeFiles/kphotoalbum.dir/all] Fehler 2
Makefile:138: die Regel für Ziel „all“ scheiterte
make: *** [all] Fehler 2
----
My daughter is considering an upgrade to 16.10 now.

But generally speaking:
Wouldn't it be sensible to have a build that is compilable on the LTS
versions of Ubuntu (or similar not yet totally outdated systems)?
Otherwise the user base would be limited to people living at the
bleeding edge of things.

Andreas
Robert Krawitz
2017-01-29 16:36:51 UTC
Permalink
But generally speaking: Wouldn't it be sensible to have a build that
is compilable on the LTS versions of Ubuntu (or similar not yet
totally outdated systems)? Otherwise the user base would be limited
to people living at the bleeding edge of things.
If you want to stick with LTS, use a version of kpa packaged for LTS
or at least a versioned release that's compatible with the packages in
LTS.

It's not reasonable to expect the development tip to stay long-term
back compatible with every system out there. If KPA wants to take
advantage of new features in KDE, Qt, or any other interesting new
package out there, it's going to break that compatibility.

Not everyone uses Ubuntu; asking the developers to test every
push on every variant of every OS simply isn't practical.
--
Robert Krawitz <***@alum.mit.edu>

*** MIT Engineers A Proud Tradition http://mitathletics.com ***
Member of the League for Programming Freedom -- http://ProgFree.org
Project lead for Gutenprint -- http://gimp-print.sourceforge.net

"Linux doesn't dictate how I work, I dictate how Linux works."
--Eric Crampton
Tobias Leupold
2017-01-29 16:40:36 UTC
Permalink
A Quick 'n' Dirty patch would be:

--- a/AnnotationDialog/Dialog.cpp
+++ b/AnnotationDialog/Dialog.cpp
@@ -1235,19 +1235,6 @@ void AnnotationDialog::Dialog::loadWindowLayout()
QString fileName = QString::fromLatin1( "%1/layout.dat" ).arg(
Settings::SettingsData::instance()->imageDirectory() );
if ( !QFileInfo(fileName).exists() )
{
- // create default layout
- // label/date/rating in a visual block with description:
- m_dockWindow->splitDockWidget(m_generalDock, m_descriptionDock,
Qt::Vertical);
- // more space for description:
- m_dockWindow->resizeDocks({m_generalDock, m_descriptionDock},
{60,100}, Qt::Vertical);
- // more space for preview:
- m_dockWindow->resizeDocks({m_generalDock, m_descriptionDock,
m_previewDock},{200,200,800}, Qt::Horizontal);
-#ifdef HAVE_KGEOMAP
- // group the map with the preview
- m_dockWindow->tabifyDockWidget(m_previewDock, m_mapDock);
- // make sure the preview tab is active:
- m_previewDock->raise();
-#endif
return;
}

This brings it to what KPA 4.7.2 did there.

Loading...