Skip to content

Build fails with exiv2 0.28.x #29

Description

@barracuda156

This part fails to compile: https://github.com/butcherg/rawproc/blob/a97c88ed4c8a84ea97ae3e0a6d1615c48ed521ab/src/gimage.cpp#L6930C1-L7012C2

[  3%] Building CXX object CMakeFiles/img.dir/src/gimage.cpp.o

/opt/local/bin/g++-mp-14 -DUSE_LIBRTPROCESS -DWXUSINGDLL -D_FILE_OFFSET_BITS=64 -D__WXGTK3__ -D__WXGTK__ -I/opt/local/include -I/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/. -I/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxGTK/3.2/lib/wx/include/gtk3-unicode-3.2 -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxGTK/3.2/include/wx-3.2 -pipe -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/include -D_GLIBCXX_USE_CXX11_ABI=0 -arch ppc -mmacosx-version-min=10.6 -ggdb -DVERSION=\"1.4.0\" -DBUILDDATE=\"2026-01-25T06:25:30\" -fopenmp -MD -MT CMakeFiles/img.dir/src/gimage.cpp.o -MF CMakeFiles/img.dir/src/gimage.cpp.o.d -o CMakeFiles/img.dir/src/gimage.cpp.o -c /opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp: In member function 'GIMAGE_ERROR gImage::ApplyLensCorrection(lfDatabase*, int, LENS_GEOMETRY, RESIZE_FILTER, int, std::string, std::string)':

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:5540:46: warning: 'static lfModifier* lfModifier::Create(const lfLens*, float, int, int)' is deprecated [-Wdeprecated-declarations]

 5540 |         lfModifier *mod = lfModifier::Create (lns, lns->CropFactor, w, h);

      |                           ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~

In file included from /opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage/gimage.h:10,

                 from /opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:2:

/opt/local/include/lensfun/lensfun.h:2068:35: note: declared here

 2068 |     DEPRECATED static lfModifier *Create (const lfLens *lens, float crop, int width, int height);

      |                                   ^~~~~~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:5644:21: warning: 'void lfModifier::Destroy()' is deprecated [-Wdeprecated-declarations]

 5644 |         mod->Destroy();

      |         ~~~~~~~~~~~~^~

/opt/local/include/lensfun/lensfun.h:2125:21: note: declared here

 2125 |     DEPRECATED void Destroy ();

      |                     ^~~~~~~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp: In member function 'GIMAGE_ERROR gImage::insertMetadata(std::string, cmsHPROFILE, bool)':

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6852:38: error: cannot bind rvalue reference of type 'Exiv2::DataBuf&&' to lvalue of type 'Exiv2::DataBuf'

 6852 |                 image->setIccProfile(iccprof);

      |                                      ^~~~~~~

In file included from /opt/local/include/exiv2/bmffimage.hpp:9,

                 from /opt/local/include/exiv2/exiv2.hpp:9,

                 from /opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:21:

/opt/local/include/exiv2/image.hpp:193:40: note:   initializing argument 1 of 'virtual void Exiv2::Image::setIccProfile(Exiv2::DataBuf&&, bool)'

  193 |   virtual void setIccProfile(DataBuf&& iccProfile, bool bTestValid = true);

      |                              ~~~~~~~~~~^~~~~~~~~~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6859:23: error: 'AnyError' in namespace 'Exiv2' does not name a type

 6859 |         catch (Exiv2::AnyError& e) {

      |                       ^~~~~~~~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp: In static member function 'static std::map<std::basic_string<char>, std::basic_string<char> > gImage::loadMetadata(const char*)':

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6898:102: error: 'class Exiv2::Exifdatum' has no member named 'toLong'

 6898 |                                                 imgdata[name] = tostr((unsigned short) exifData[*it].toLong());

      |                                                                                                      ^~~~~~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6910:23: error: 'AnyError' in namespace 'Exiv2' does not name a type

 6910 |         catch (Exiv2::AnyError& e) {

      |                       ^~~~~~~~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp: In member function 'GIMAGE_ERROR gImage::getMetadata(std::string)':

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6942:52: error: base operand of '->' has non-pointer type 'const Exiv2::DataBuf'

 6942 |                 prof = new char[image->iccProfile()->size_];

      |                                                    ^~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6943:49: error: base operand of '->' has non-pointer type 'const Exiv2::DataBuf'

 6943 |                 memcpy(prof, image->iccProfile()->pData_, image->iccProfile()->size_);

      |                                                 ^~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6943:78: error: base operand of '->' has non-pointer type 'const Exiv2::DataBuf'

 6943 |                 memcpy(prof, image->iccProfile()->pData_, image->iccProfile()->size_);

      |                                                                              ^~

/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage.cpp:6944:53: error: base operand of '->' has non-pointer type 'const Exiv2::DataBuf'

 6944 |                 setProfile(prof, image->iccProfile()->size_);

      |                                                     ^~

[  4%] Building CXX object CMakeFiles/rawproc.dir/src/rawprocFrm.cpp.o

/opt/local/bin/g++-mp-14 -DUSE_LIBRTPROCESS -DWXUSINGDLL -D_FILE_OFFSET_BITS=64 -D__WXGTK3__ -D__WXGTK__ -I/opt/local/include -I/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/. -I/opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/gimage -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxGTK/3.2/lib/wx/include/gtk3-unicode-3.2 -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxGTK/3.2/include/wx-3.2 -pipe -Os -DNDEBUG -isystem/opt/local/include/LegacySupport -I/opt/local/include -D_GLIBCXX_USE_CXX11_ABI=0 -arch ppc -mmacosx-version-min=10.6 -ggdb -DVERSION=\"1.4.0\" -DBUILDDATE=\"2026-01-25T06:25:30\" -fopenmp -MD -MT CMakeFiles/rawproc.dir/src/rawprocFrm.cpp.o -MF CMakeFiles/rawproc.dir/src/rawprocFrm.cpp.o.d -o CMakeFiles/rawproc.dir/src/rawprocFrm.cpp.o -c /opt/local/var/macports/build/rawproc-c391596a/work/rawproc-1.4.0/src/rawprocFrm.cpp

make[2]: *** [CMakeFiles/img.dir/src/gimage.cpp.o] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/rawproc-c391596a/work/build'
make[1]: *** [CMakeFiles/img.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions