https://github.com/Exiv2/exiv2 Bump Version to 0.27.0.3
В общем обновился до последней версии exiv2 а там ... пришлось править слакбилд и пару приложений: nufraw и geeqie
кусок слакбилда:
# ./configure \
# --prefix=/usr \
# --libdir=/usr/lib${LIBDIRSUFFIX} \
# --sysconfdir=/etc \
# --localstatedir=/var \
# --mandir=/usr/man \
# --enable-shared=yes \
# --enable-static=no \
# --enable-xmp \
# --enable-video \
# --enable-webready \
# --without-ssh \
# --build=$ARCH-slackware-linux || exit 1
cmake \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_MANDIR=/usr/man \
-DBUILD_SHARED_LIBS=ON \
-DEXIV2_ENABLE_VIDEO=ON \
. || exit 1
nufraw 0.42
--- nufraw_exiv2.cc.orig 2016-09-05 17:24:50.000000000 +0300
+++ nufraw_exiv2.cc 2018-12-01 06:47:43.196751993 +0300
@@ -67,7 +67,7 @@
if (exifData.empty()) {
std::string error(uf->filename);
error += ": No Exif data found in the file";
- throw Exiv2::Error(1, error);
+ throw Exiv2::Error(Exiv2::kerErrorMessage, error);
}
/* List of tag names taken from exiv2's printSummary() in actions.cpp */
geeqie git 969791e9521aeffd61d67b3c2d17ccbff98f00d6
diff --git a/src/exiv2.cc b/src/exiv2.cc
index b3c80657..159992ca 100644
--- a/src/exiv2.cc
+++ b/src/exiv2.cc
@@ -24,6 +24,7 @@
#include <exiv2/image.hpp>
#include <exiv2/exif.hpp>
+#include <exiv2/exiv2.hpp>
#include <iostream>
#include <string>
@@ -374,7 +375,7 @@ public:
#endif
Exiv2::Image *image = imageData_->image();
- if (!image) throw Exiv2::Error(21);
+ if (!image) throw Exiv2::Error(Exiv2::kerGeneralError, 21);
image->setExifData(exifData_);
image->setIptcData(iptcData_);
#if EXIV2_TEST_VERSION(0,16,0)
@@ -449,6 +450,8 @@ extern "C" {
void exif_init(void)
+
+#define EXV_PACKAGE "exiv2"
{
#ifdef EXV_ENABLE_NLS
bind_textdomain_codeset (EXV_PACKAGE, "UTF-8");
Пачти вроде разработчикам отправил, хоть это и хаки (без проверки версии).