Opened 4 years ago

Last modified 4 months ago

#62755 assigned defect

digikam: update to 8.4.0

Reported by: mascguy (Christopher Nielsen) Owned by: cgilles (HumanDynamo)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc: RJVB (René Bertin), cjones051073 (Chris Jones), contextnerror
Port: digikam

Description

It looks like our Digikam port is a few major releases behind. And it's also failing to build across-the-board on our buildbots.

Let's update to the latest release, if possible.

Change History (7)

comment:1 Changed 4 years ago by mascguy (Christopher Nielsen)

According to rumors, Rene may have a working Digikam 7.1.0 port already... ;-)

comment:2 Changed 4 years ago by RJVB (René Bertin)

Much easier said than done, alas. At least the way I build and install my KF5 stuff but even if I didn't try to get feature parity with Linux builds there would still be a sh*load of dependencies to introduce first. Here's a pruned list allowing to focus on non-existant ports (kf5-*): ` The following ports are dependencies of kf5-digikam @7.1.0_0+langselect+qt5kde:

xz pkgconfig cmake kde-extra-cmake-modules kf5-kdoctools

kf5-ki18n

python27 qt5-kde

kf5-karchive

flex qt5-webkit kf5-libkipi

kf5-kconfig kf5-kservice

kf5-kcoreaddons

shared-mime-info

kf5-kcrash

kf5-kwindowsystem

kf5-kdbusaddons

kf5-kxmlgui

kf5-attica kf5-kconfigwidgets

kf5-kauth kf5-kcodecs kf5-kguiaddons kf5-kwidgetsaddons

kf5-kglobalaccel kf5-kiconthemes

kf5-kitemviews

kf5-ktextwidgets

kf5-kcompletion kf5-sonnet

hunspell

kf5-kcalcore

libical

kf5-kio

acl-dev

acl

attr

kf5-kbookmarks kf5-kjobwidgets kf5-knotifications

phonon-qt5 dbusmenu-qt5

kf5-kwallet

qgpgme

kf5-solid

kf5-kfilemetadata

exiv2 poppler-qt5 taglib ffmpeg ebook-tools

kf5-kitemmodels kf5-knotifyconfig kf5-threadweaver opencv libpgf kf5-marble

protobuf3-cpp kf5-knewstuff kf5-kpackage kf5-kparts kf5-krunner

kf5-plasma-framework

kf5-kactivities

boost

kf5-kdeclarative kf5-kirigami2

kf5-breeze-icons

shapelib

libgpod ImageMagick eigen3 lensfun libgphoto2 gphoto2 liblqr kf5-libkexiv2 oxygen-icons qt5-sqlite-plugin

qt5-qtbase

gstreamer1-gst-libav gstreamer1-gst-plugins-good

`

Personally I have given up on the idea of introducing KF5 to MacPorts - I'm not even maintaining my own ports very actively anymore.

Gilles himself probably has experience building a standalone version using a script he might be able to tweak so Qt5 and other dependencies are taken from MacPorts but the KF5 frameworks and libraries are embedded in the app bundle.

Version 0, edited 4 years ago by RJVB (René Bertin) (next)

comment:3 Changed 4 years ago by cgilles (HumanDynamo)

Hi,

Mostly the list of dependencies is out of date. As i can see libkipi libkexiv2 for ex, are removed since few years now.

Look here to see the dependencies list of digiKam :

https://www.digikam.org/api/index.html#externaldeps

And yes, the current MacOS PKG installer is fully compiled with Macports. This include KF5 of course. My scripts are located here :

https://invent.kde.org/graphics/digikam/-/tree/master/project/bundles/macports

This is the macports packages list installed to compile digiKam :

https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/macports/01-build-macports.sh#L270

... and here, the list of KF5 components installed in Macports:

https://invent.kde.org/graphics/digikam/-/blob/master/project/bundles/macports/02-build-extralibs.sh#L72

The script 03 compile and install 3 shared UPSTREAM libs (libexiv2, lensfun, libqtav), digiKam, and 2 stand alone plugins.

The script 04, scan dependencies to build the PKG installer, drop debug symbols, make binaries relocatable, and package the application.

To process packaging from scratch, this take 4 hours on my macbook pro 2015 Intel.

Voilà, If you need more guidance, let's me hear...

Gilles Caulier

comment:4 Changed 3 years ago by Christopher Nielsen <mascguy@…>

In be36e945cd0441c2d734dcbc61e96dfe1c9d75ac/macports-ports (master):

digikam: set known_fail
See: #62755

comment:5 Changed 21 months ago by contextnerror

Cc: contextnerror added

comment:6 Changed 4 months ago by ryandesign (Ryan Carsten Schmidt)

Summary: digikam: update to 7.2.0digikam: update to 8.4.0

comment:7 in reply to:  3 Changed 4 months ago by barracuda156

Replying to cgilles:

I have built now 4.14.0, however it crashes on launch (like many KDE4 apps, though not all of them):

QIODevice::setTextModeEnabled: The device is not open
digikam(89086) mac_initialize_dbus: warning: unable to initialize D-Bus environment!
Error: "/var/tmp/kdecache-svacchanda" is owned by uid 501 instead of uid 0.
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries .. done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries warning: Could not find object file "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_kde_kde4-runtime/kde4-runtime/work/build/kimgio/CMakeFiles/kimg_webp.dir/webp.cpp.o" - no debug information available for "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_kde_kde4-runtime/kde4-runtime/work/kde4-runtime-4.14.4.20171102/kimgio/webp.cpp".

. done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
Reading symbols for shared libraries .. done
Reading symbols for shared libraries . done
Reading symbols for shared libraries . done
digikam(89086)/kdeui (kdelibs): Session bus not found 
To circumvent this problem try the following command (with Linux and bash) 
export $(dbus-launch) 

Program received signal SIGABRT, Aborted.
0x00b32d48 in __kill ()
(gdb) bt
#0  0x00b32d48 in __kill ()
#1  0x00bd680c in abort ()
#2  0x0463a934 in qt_message_output ()
#3  0x0321b810 in QDebug::~QDebug ()
#4  0x03300f48 in KApplicationPrivate::init ()
#5  0x03301878 in KApplication::KApplication ()
#6  0x004523c8 in main ()
Note: See TracTickets for help on using tickets.