Rebuilding with a specific libexiv2 build

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Rebuilding with a specific libexiv2 build

Luca Carlon
Hello,
it's been some months since I fixed a segfault in libexiv2 that prevents digikam from even starting with my collection. I suppose libexiv2 0.25 should include that fix, but Ubuntu still is using 0.24.
Can someone explain how to rebuild digikam linking against my own build of libexiv2 instead of linking against the system libexiv2?

I started by rebuilding libexiv2 setting the prefix to some staging directory. Then I rebuilt libkexiv2 setting CMAKE_PREFIX_PATH. This seemed to work: libkexiv2 seems to be linked against libexiv2 0.25. I also set the prefix to the staging dir and now both are in there. Problem arise when trying to build digikam itself: by setting CMAKE_PREFIX_PATH seems to link against my build of libkexiv2 but not my build of libexiv2. ldd confirms that digikam executable links to my own libkexiv2 but the system libexiv2. Can someone provide any info about how how to build digikam against my build of libexiv2?

Regards.

Luca

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Rebuilding with a specific libexiv2 build

Gilles Caulier-4
I do it on my system.

1/ Remove 0.24 headers files (Exiv2 devel package). Binaries files can stay in place.
2/ Checkout Exiv2 0.25 source code. Configure, compile and install on your system (install prefix=/usr). Take a care about all options to enable, especially XMP support. disable Video writing support which still experimental. Video read support is fixed in this release, which is the problem.
3/ Checkout digiKam source code. There is a Cmake option to recompile libkexiv2 (this one use only Exiv2 API/ABI). Look in readme.
4/ Compile and install digiKam including libkexiv2. run it and look into Help/Composants Info dialog to see if Exiv2 0.25 is well used.

Gilles Caulier


2015-08-17 10:54 GMT+02:00 Luca Carlon <[hidden email]>:
Hello,
it's been some months since I fixed a segfault in libexiv2 that prevents digikam from even starting with my collection. I suppose libexiv2 0.25 should include that fix, but Ubuntu still is using 0.24.
Can someone explain how to rebuild digikam linking against my own build of libexiv2 instead of linking against the system libexiv2?

I started by rebuilding libexiv2 setting the prefix to some staging directory. Then I rebuilt libkexiv2 setting CMAKE_PREFIX_PATH. This seemed to work: libkexiv2 seems to be linked against libexiv2 0.25. I also set the prefix to the staging dir and now both are in there. Problem arise when trying to build digikam itself: by setting CMAKE_PREFIX_PATH seems to link against my build of libkexiv2 but not my build of libexiv2. ldd confirms that digikam executable links to my own libkexiv2 but the system libexiv2. Can someone provide any info about how how to build digikam against my build of libexiv2?

Regards.

Luca

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Rebuilding with a specific libexiv2 build

Luca Carlon
Thanks.

Is it possible to do this by using a different prefix than /usr? So can I avoid removing header files and can I avoid having to install exiv2 0.25 in the system paths?
Regards.

Luca

On Mon, Aug 17, 2015 at 11:11 AM, Gilles Caulier <[hidden email]> wrote:
I do it on my system.

1/ Remove 0.24 headers files (Exiv2 devel package). Binaries files can stay in place.
2/ Checkout Exiv2 0.25 source code. Configure, compile and install on your system (install prefix=/usr). Take a care about all options to enable, especially XMP support. disable Video writing support which still experimental. Video read support is fixed in this release, which is the problem.
3/ Checkout digiKam source code. There is a Cmake option to recompile libkexiv2 (this one use only Exiv2 API/ABI). Look in readme.
4/ Compile and install digiKam including libkexiv2. run it and look into Help/Composants Info dialog to see if Exiv2 0.25 is well used.

Gilles Caulier


2015-08-17 10:54 GMT+02:00 Luca Carlon <[hidden email]>:
Hello,
it's been some months since I fixed a segfault in libexiv2 that prevents digikam from even starting with my collection. I suppose libexiv2 0.25 should include that fix, but Ubuntu still is using 0.24.
Can someone explain how to rebuild digikam linking against my own build of libexiv2 instead of linking against the system libexiv2?

I started by rebuilding libexiv2 setting the prefix to some staging directory. Then I rebuilt libkexiv2 setting CMAKE_PREFIX_PATH. This seemed to work: libkexiv2 seems to be linked against libexiv2 0.25. I also set the prefix to the staging dir and now both are in there. Problem arise when trying to build digikam itself: by setting CMAKE_PREFIX_PATH seems to link against my build of libkexiv2 but not my build of libexiv2. ldd confirms that digikam executable links to my own libkexiv2 but the system libexiv2. Can someone provide any info about how how to build digikam against my build of libexiv2?

Regards.

Luca

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Rebuilding with a specific libexiv2 build

Gilles Caulier-4
Certainly, but i'm more complicated...

Gilles Caulier

2015-08-17 14:17 GMT+02:00 Luca Carlon <[hidden email]>:
Thanks.

Is it possible to do this by using a different prefix than /usr? So can I avoid removing header files and can I avoid having to install exiv2 0.25 in the system paths?
Regards.

Luca


On Mon, Aug 17, 2015 at 11:11 AM, Gilles Caulier <[hidden email]> wrote:
I do it on my system.

1/ Remove 0.24 headers files (Exiv2 devel package). Binaries files can stay in place.
2/ Checkout Exiv2 0.25 source code. Configure, compile and install on your system (install prefix=/usr). Take a care about all options to enable, especially XMP support. disable Video writing support which still experimental. Video read support is fixed in this release, which is the problem.
3/ Checkout digiKam source code. There is a Cmake option to recompile libkexiv2 (this one use only Exiv2 API/ABI). Look in readme.
4/ Compile and install digiKam including libkexiv2. run it and look into Help/Composants Info dialog to see if Exiv2 0.25 is well used.

Gilles Caulier


2015-08-17 10:54 GMT+02:00 Luca Carlon <[hidden email]>:
Hello,
it's been some months since I fixed a segfault in libexiv2 that prevents digikam from even starting with my collection. I suppose libexiv2 0.25 should include that fix, but Ubuntu still is using 0.24.
Can someone explain how to rebuild digikam linking against my own build of libexiv2 instead of linking against the system libexiv2?

I started by rebuilding libexiv2 setting the prefix to some staging directory. Then I rebuilt libkexiv2 setting CMAKE_PREFIX_PATH. This seemed to work: libkexiv2 seems to be linked against libexiv2 0.25. I also set the prefix to the staging dir and now both are in there. Problem arise when trying to build digikam itself: by setting CMAKE_PREFIX_PATH seems to link against my build of libkexiv2 but not my build of libexiv2. ldd confirms that digikam executable links to my own libkexiv2 but the system libexiv2. Can someone provide any info about how how to build digikam against my build of libexiv2?

Regards.

Luca

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel
Reply | Threaded
Open this post in threaded view
|

Re: Rebuilding with a specific libexiv2 build

Luca Carlon
Just added find_package() instruction in CMakeLists.txt and added the FindExiv2 module. No system changed. No crash.
May this be useful in the repo as well?
Regards.

Luca

On Mon, Aug 17, 2015 at 3:19 PM, Gilles Caulier <[hidden email]> wrote:
Certainly, but i'm more complicated...

Gilles Caulier

2015-08-17 14:17 GMT+02:00 Luca Carlon <[hidden email]>:
Thanks.

Is it possible to do this by using a different prefix than /usr? So can I avoid removing header files and can I avoid having to install exiv2 0.25 in the system paths?
Regards.

Luca


On Mon, Aug 17, 2015 at 11:11 AM, Gilles Caulier <[hidden email]> wrote:
I do it on my system.

1/ Remove 0.24 headers files (Exiv2 devel package). Binaries files can stay in place.
2/ Checkout Exiv2 0.25 source code. Configure, compile and install on your system (install prefix=/usr). Take a care about all options to enable, especially XMP support. disable Video writing support which still experimental. Video read support is fixed in this release, which is the problem.
3/ Checkout digiKam source code. There is a Cmake option to recompile libkexiv2 (this one use only Exiv2 API/ABI). Look in readme.
4/ Compile and install digiKam including libkexiv2. run it and look into Help/Composants Info dialog to see if Exiv2 0.25 is well used.

Gilles Caulier


2015-08-17 10:54 GMT+02:00 Luca Carlon <[hidden email]>:
Hello,
it's been some months since I fixed a segfault in libexiv2 that prevents digikam from even starting with my collection. I suppose libexiv2 0.25 should include that fix, but Ubuntu still is using 0.24.
Can someone explain how to rebuild digikam linking against my own build of libexiv2 instead of linking against the system libexiv2?

I started by rebuilding libexiv2 setting the prefix to some staging directory. Then I rebuilt libkexiv2 setting CMAKE_PREFIX_PATH. This seemed to work: libkexiv2 seems to be linked against libexiv2 0.25. I also set the prefix to the staging dir and now both are in there. Problem arise when trying to build digikam itself: by setting CMAKE_PREFIX_PATH seems to link against my build of libkexiv2 but not my build of libexiv2. ldd confirms that digikam executable links to my own libkexiv2 but the system libexiv2. Can someone provide any info about how how to build digikam against my build of libexiv2?

Regards.

Luca

_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel



_______________________________________________
Digikam-devel mailing list
[hidden email]
https://mail.kde.org/mailman/listinfo/digikam-devel