How to compile Digikam on Ubuntu 18.04 with libexifv2 0.26
Gilles Caulier
caulier.gilles at gmail.com
Wed Sep 5 14:57:22 BST 2018
Also I think you want ==> you must. The Exiv2 video support is full of bug
and will crash digiKam in few seconds of collection scan.
My Exiv2 options to compile the AppImage bundle :
https://cgit.kde.org/digikam.git/tree/project/bundles/3rdparty/ext_exiv2/CMakeLists.txt#n11
Gilles Caulier
2018-09-05 14:45 GMT+02:00 Andrey Goreev <aegoreev at gmail.com>:
> Also I think you want to disable video support when compiling exiv2.
> Handling of video files metadata has been passed on ffmpeg starting from
> version 6git.
>
> On Wed, Sep 5, 2018 at 6:41 AM Andrey Goreev <aegoreev at gmail.com> wrote:
>
>> Looks like you are also missing ffmpeg. Years ago Ubuntu had a different
>> ffmpeg in their repositories. I am not sure if that is still the case but
>> you might want to compile it by yourself from ffmpeg.org. They have a
>> manual in their wiki, it is pretty straight forward and takes 15 minutes
>> tops.
>>
>> There is also a note in your log about libjasper, libksane and
>> libvkontakte packages missing. I am not sure what libjasper is. Libksane is
>> probably required if you import images from a scanner, libvkontakte must be
>> an export plugin for the vk.com social network.
>>
>> In addition to that I think you might want to recompile opencv yourself
>> with a bunch of options turned off. Gilles would know more about this.
>> Thanks,
>> Andrey
>>
>> On Tue, Sep 4, 2018 at 9:09 PM Gilles Caulier <caulier.gilles at gmail.com>
>> wrote:
>>
>>>
>>>
>>> 2018-09-05 0:19 GMT+02:00 Matthieu <ermelir at gmail.com>:
>>>
>>>> Hi there,
>>>>
>>>> I'm trying to recompile Digikam to enable the RAW metadata writing. My
>>>> first step in Digikam development. If this is a success, why not contribute?
>>>> Unfortunately, I'm not able to do it.
>>>>
>>>> My laptop is an Ubuntu 18.04.
>>>>
>>>>
>>>> *uname -aLinux laptop 4.15.0-33-generic #36-Ubuntu SMP Wed Aug 15
>>>> 16:00:05 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux*
>>>>
>>>> Here's the output command of the bootstrap.linux:
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *Qt5 Install Path : /usrdigiKam Install Path : /usrCMake
>>>> binary : cmakeBuild Directory : /opt/digikam/git/build--
>>>> ------------------------------------------------------------------------------------
>>>> Starting CMake configuration for: digikam-software-collection--
>>>> Documentation translations directory is missing.-- You can use
>>>> DIGIKAMSC_CHECKOUT_DOC option to extract doc i18n files from git
>>>> repositories.--
>>>> ------------------------------------------------------------------------------------
>>>> Compilation configuration for: digikam-software-collection-- digiKam core
>>>> will be compiled.................. YES-- Extract application translations
>>>> files......... NO-- Extract documentation translations files....... NO--
>>>> Translations will be compiled.................. NO-- Handbooks will be
>>>> compiled..................... YES-- Tests code will be
>>>> compiled.................... YES--
>>>> ------------------------------------------------------------------------------------
>>>> Starting CMake configuration for: digikam-- Could not set up the appstream
>>>> test. appstreamcli is missing.-- Could NOT find KF5Sane: found neither
>>>> KF5SaneConfig.cmake nor kf5sane-config.cmake -- Could NOT find
>>>> KF5Vkontakte: found neither KF5VkontakteConfig.cmake nor
>>>> kf5vkontakte-config.cmake -- KF5::KIOWidgets include dirs:
>>>> /usr/include/KF5/KIOWidgets;/usr/include/KF5-- Libjpeg version: 84-- Using
>>>> libjpeg sub-directory: libjpeg/84-- Boost version: 1.65.1-- Found lcms
>>>> version 2.09, /usr/lib/x86_64-linux-gnu/liblcms2.so-- Could NOT find Exiv2:
>>>> Found unsuitable version "0.25.0", but required is at least "0.26" (found
>>>> /usr/lib/x86_64-linux-gnu/libexiv2.so)-- Could NOT find FFmpeg (missing:
>>>> AVFILTER_LIBRARIES AVFILTER_INCLUDE_DIRS) -- FFMPEG_FOUND = FALSE--
>>>> FFMPEG_INCLUDE_DIRS = /usr/include/x86_64-linux-gnu-- FFMPEG_LIBRARIES =
>>>> /usr/lib/x86_64-linux-gnu/libavcodec.so;/usr/lib/x86_64-linux-gnu/libavformat.so;/usr/lib/x86_64-linux-gnu/libavutil.so;/usr/lib/x86_64-linux-gnu/libswscale.so--
>>>> FFMPEG_DEFINITIONS = -- QtAV search path:
>>>> /usr/lib/x86_64-linux-gnu/cmake-- Found QtAV version 1.12.0--
>>>> QtAV_FOUND = TRUE-- QtAV_INCLUDE_DIR =
>>>> /usr/include/x86_64-linux-gnu/qt5/QtAV
>>>> /usr/include/x86_64-linux-gnu/qt5/QtAVWidgets-- QtAV_LIBRARIES =
>>>> /usr/lib/x86_64-linux-gnu/libQtAV.so;/usr/lib/x86_64-linux-gnu/libQtAVWidgets.so--
>>>> QtAV_VERSION = 1.12.0-- ENABLE_MEDIAPLAYER option is enabled but FFMpeg
>>>> cannot be found. Media player support is disabled.-- First try at finding
>>>> OpenCV...-- OpenCV Root directory is: /usr/share/OpenCV-- OpenCV: Found
>>>> version 3.2.0 (required: 3.1.0)-- OpenCV headers:
>>>> /usr/include;/usr/include/opencv-- OpenCV libs :
>>>> opencv_core;opencv_objdetect;opencv_imgproc;opencv_imgcodecs--
>>>> Marble_FOUND = TRUE-- MARBLE_INCLUDE_DIR = /usr/include--
>>>> MARBLE_LIBRARIES = /usr/lib/x86_64-linux-gnu/libmarblewidget-qt5.so--
>>>> ASTRO_LIBRARIES = /usr/lib/x86_64-linux-gnu/libastro.so-- Could NOT find
>>>> Jasper (missing: JASPER_LIBRARIES JASPER_INCLUDE_DIR) -- libgphoto2
>>>> found : TRUE-- libgphoto2 version : 2.5.16-- libgphoto2 includes :
>>>> /usr/include/gphoto2-- libgphoto2 libraries:
>>>> /usr/lib/x86_64-linux-gnu/libgphoto2.so;/usr/lib/x86_64-linux-gnu/libgphoto2_port.so--
>>>> libgphoto2 API version >= 2.5-- liblensfun: Found version 0.3.2.0
>>>> (required: 0.2.6.0)-- --
>>>> ---------------------------------------------------- digiKam RawEngine
>>>> dependencies checks:-- -- RawEngine will not be compiled with RedCine
>>>> codec-- Looking for LibJpeg-- RawEngine will be compiled with DNG lossy
>>>> codec-- Looking for PThreads--
>>>> ---------------------------------------------------- -- --
>>>> ------------------------------------------------------------------------------------
>>>> digiKam 6.0.0-beta1 dependencies results <http://www.digikam.org
>>>> <http://www.digikam.org>>-- -- MySQL Database Support will be compiled..
>>>> YES (optional)-- MySQL Internal Support will be compiled.. YES
>>>> (optional)-- DBUS Support will be compiled............ YES (optional)--
>>>> App. Style Support will be compiled...... YES (optional)-- QWebEngine
>>>> Support will be compiled...... NO (optional)-- libboostgraph
>>>> found...................... YES-- libexiv2
>>>> found........................... NOCMake Error at
>>>> core/cmake/modules/MacroUtils.cmake:44 (message): libexiv2 is needed. You
>>>> need to install the libexiv2 (version >= 0.26 development package.Call
>>>> Stack (most recent call first): core/CMakeLists.txt:559
>>>> (PRINT_LIBRARY_STATUS)-- libexiv2 website is at http://www.exiv2.org
>>>> <http://www.exiv2.org>-- -- libexpat found...........................
>>>> YES-- libjpeg found............................ YES-- libkde
>>>> found............................. YES-- liblcms
>>>> found............................ YES-- libopencv
>>>> found.......................... YES-- libpng
>>>> found............................. YES-- libpthread
>>>> found......................... YES-- libqt
>>>> found.............................. YES-- libtiff
>>>> found............................ YES-- bison
>>>> found.............................. YES (optional)-- doxygen
>>>> found............................ YES (optional)-- flex
>>>> found............................... YES (optional)-- libakonadicontact
>>>> found.................. YES (optional)-- libeigen3
>>>> found.......................... YES (optional)-- libgphoto2
>>>> found......................... YES (optional)-- libjasper
>>>> found.......................... NO (optional)-- digiKam will be compiled
>>>> without JPEG2000 support.-- Please install the libjasper (version >=
>>>> 1.7.0) development package.-- -- libkcalcore found........................
>>>> YES (optional)-- libkvkontakte found...................... NO
>>>> (optional)-- digiKam will be compiled without libkvkontakte support.--
>>>> Please install the libkvkontakte (version >= 4.70.0) development package.--
>>>> -- libkfilemetadata found................... YES (optional)--
>>>> libkiconthemes found..................... YES (optional)-- libkio
>>>> found............................. YES (optional)-- libknotifications
>>>> found.................. YES (optional)-- libknotifyconfig
>>>> found................... YES (optional)-- libksane
>>>> found........................... NO (optional)-- digiKam will be compiled
>>>> without flat scanners support.-- Please install the libksane (version >=
>>>> 5.0.0) development package.-- -- liblensfun found.........................
>>>> YES (optional)-- liblqr-1 found........................... YES
>>>> (optional)-- libmarble found.......................... YES (optional)--
>>>> libqtav found............................ YES (optional)-- libthreadweaver
>>>> found.................... YES (optional)-- libxml2
>>>> found............................ YES (optional)-- libxslt
>>>> found............................ YES (optional)-- OpenGL
>>>> found............................. YES (optional)CMake Error at
>>>> core/CMakeLists.txt:616 (message): digiKam will be
>>>> compiled.................. NO (See the README file for more details about
>>>> dependencies)-- Configuring incomplete, errors occurred!See also
>>>> "/opt/digikam/git/CMakeFiles/CMakeOutput.log".See also
>>>> "/opt/digikam/git/CMakeFiles/CMakeError.log".*
>>>>
>>>> I don't want to install Digikam in /usr, but this is another problem.
>>>> The problem is related to libexiv2.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *git statusOn branch masterYour branch is up-to-date with
>>>> 'origin/master'.Files not followed: (utilisez "git add <fichier>..." pour
>>>> inclure dans ce qui sera validé) CMakeCache.txt CMakeDoxyfile.in
>>>> CMakeDoxygenDefaults.cmake CMakeFiles/ CMakeTmp/
>>>> DartConfiguration.tcl app/ build/
>>>> core/app/utils/digikam_config.h core/app/utils/digikam_opencv.h
>>>> core/libs/rawengine/libraw/libraw_config.h core/prefix.sh doc/
>>>> ecm_uninstall.cmake extra/ libs/ prefix.sh
>>>> project/bundles/3rdparty/ext_exiv2/CMakeCache.txt
>>>> project/bundles/3rdparty/ext_exiv2/CMakeFiles/*
>>>>
>>>> libexiv2 as been installed from the latest available sources files with
>>>> the following command:
>>>>
>>>>
>>>>
>>>> *./configure --prefix=/usr/local --enable-video --without-ssh
>>>> --disable-staticmakesudo make install*
>>>>
>>>> A locate show me that libexiv2 is available.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *sudo updatedb && locate libexiv2.so
>>>> /usr/lib/x86_64-linux-gnu/libexiv2.so/usr/lib/x86_64-linux-gnu/libexiv2.so.14/usr/lib/x86_64-linux-gnu/libexiv2.so.14.0.0/usr/local/lib/libexiv2.so/usr/local/lib/libexiv2.so.26/usr/local/lib/libexiv2.so.26.0.0*
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *ls -la /usr/local/lib/libexiv2.*-rw-r--r-- 1 root root 6869170 Sep 3
>>>> 11:16 /usr/local/lib/libexiv2.a-rw-r--r-- 1 root root 1038 Sep 4 09:21
>>>> /usr/local/lib/libexiv2.la <http://libexiv2.la>lrwxrwxrwx 1 root root
>>>> 18 Sep 4 09:21 /usr/local/lib/libexiv2.so -> libexiv2.so.26.0.0lrwxrwxrwx
>>>> 1 root root 18 Sep 4 09:21 /usr/local/lib/libexiv2.so.26 ->
>>>> libexiv2.so.26.0.0-rw-r--r-- 1 root root 3577744 Sep 4 09:21
>>>> /usr/local/lib/libexiv2.so.26.0.0*
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *ldd /usr/local/lib/libexiv2.so linux-vdso.so.1
>>>> (0x00007ffdcb699000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1
>>>> (0x00007f1b9825a000) libexpat.so.1 =>
>>>> /lib/x86_64-linux-gnu/libexpat.so.1 (0x00007f1b98028000) libdl.so.2 =>
>>>> /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f1b97e24000) libpthread.so.0 =>
>>>> /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f1b97c05000)
>>>> libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6
>>>> (0x00007f1b97877000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6
>>>> (0x00007f1b974d9000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6
>>>> (0x00007f1b970e8000) libgcc_s.so.1 =>
>>>> /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f1b96ed0000)
>>>> /lib64/ld-linux-x86-64.so.2 (0x00007f1b98980000)*
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> *cat /etc/ld.so.conf.d/*/usr/lib/x86_64-linux-gnu/libfakeroot# libc
>>>> default configuration/usr/local/lib# Multiarch
>>>> support/usr/local/lib/x86_64-linux-gnu/lib/x86_64-linux-gnu/usr/lib/x86_64-linux-gnu#
>>>> Legacy biarch compatibility support/lib32/usr/lib32*
>>>>
>>>> I'm not a power user of Linux, nor c++ / cmake /bootstrap process.
>>>>
>>>> My questions are:
>>>> - is there something to clean before running bootstrap.linux to ensure
>>>> that we start off?
>>>>
>>>
>>> Remove the "build" sub directory as well. This will clean the cmake
>>> cache.
>>>
>>>
>>>> - is there a specific location to specify to load the local libs?
>>>>
>>>
>>> Why you want to install libexiv2 to /usr/local/ ? This is a source of
>>> problems
>>>
>>> I suspect that you don't want to remove the official and older one Exiv2
>>> version from the system installed in /usr.
>>>
>>> Using both version of the library, even if in theory it's possible will
>>> introduce dysfunction at run-time (crashes). This is a know problem from
>>> Exiv2.
>>>
>>>
>>>> - did I miss something when building libexiv2?
>>>>
>>>
>>> Install and replace the official Exiv2 from /usr as well. uninstall the
>>> previous one before. This is how the AppImage bundle are done under CentOS
>>> 6.
>>>
>>> Best
>>>
>>> Gilles Caulier
>>>
>>>>
>>>> Thanks for your help
>>>>
>>>> Mat
>>>>
>>>>
>>>>
>>>>
>>> --
>> Best regards,
>>
> --
> Best regards,
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/digikam-devel/attachments/20180905/68ee6089/attachment.html>
More information about the Digikam-devel
mailing list