Closed barracuda156 closed 5 months ago
Never tried it, don't have a machine to do so. Also, have not heard from any of the dozen-or so user base...
The long pole in the tent, wxWidgets, has a macOS build, so that shouldn't be tough. The rest, libraw, littlecms2, exiv2, lensfun are all unix-buildable, and libjpeg, libtiff, and libpng should be available in the macOS package repository. Definitely a build-by-hand sort of thing; if you try it, bring your error messages here and I'll help you work through them.
No architecture-specific code in the rawproc tree. Closest I got was when I was poking around with half-floats, but I don't even think that touched hardware stuff.
@butcherg Thank you! Sounds good. (As I recall, wxWidgets 3.2 won’t build for any PPC system as-is, but I think I had a dirty hack for it. wxWidgets 3.0 builds normally.)
I will verify tonight other dependencies, but from look of things, all should be good. If so, then I can try building and update you.
I'm currently using wxWidgets 3.1.4, if that helps...
@butcherg All dependencies build fine. However, for whatever reason we have no wxWidgets 3.1 in Macports. So I do not yet know if it builds. I will try.
In the meanwhile, is it possible to add a configure option to specify location of wxWidgets installation? Something like --with-wx-prefix
.
P. S. wxWidgets 3.0 cannot work, right?
UPD. Hmm, perhaps I had some work on wxWidgets 3.2, but either did not succeed or postponed it. wxWidgets 3.1 seems to be a development branch, and its requirements for SDK are no better: 10.11+ (!): https://raw.githubusercontent.com/wxWidgets/wxWidgets/v3.1.7/docs/changes.txt
If it is possible to support wxWidgets 3.0, that would be awesome.
@butcherg It wants wxWidgets even when they are disabled (header uses unprotected include of wx.h
):
---> Configuring rawproc
Executing: cd "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_graphics_rawproc/rawproc/work/rawproc-1.3" && autoreconf --install --verbose
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: /opt/local/bin/aclocal
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: configure.ac: not using Intltool
autoreconf: configure.ac: not using Gtkdoc
autoreconf: running: /opt/local/bin/autoconf
autoreconf: configure.ac: not using Autoheader
autoreconf: running: /opt/local/bin/automake --add-missing --copy --no-force
configure.ac:15: installing './compile'
configure.ac:6: installing './install-sh'
configure.ac:6: installing './missing'
src/Makefile.am: installing './depcomp'
autoreconf: Leaving directory '.'
Executing: cd "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_graphics_rawproc/rawproc/work/rawproc-1.3" && ./configure --prefix=/opt/local --enable-dcraw=no --enable-lensfun=yes --enable-lensfunupdate=no --enable-librtprocess --enable-wxwidgets=no
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /opt/local/bin/gmkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... /opt/local/bin/gcc-mp-12
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether /opt/local/bin/gcc-mp-12 accepts -g... yes
checking for /opt/local/bin/gcc-mp-12 option to enable C11 features... none needed
checking whether /opt/local/bin/gcc-mp-12 understands -c and -o together... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of /opt/local/bin/gcc-mp-12... gcc3
checking whether the compiler supports GNU C++... yes
checking whether /opt/local/bin/g++-mp-12 accepts -g... yes
checking for /opt/local/bin/g++-mp-12 option to enable C++11 features... none needed
checking dependency style of /opt/local/bin/g++-mp-12... gcc3
checking for /opt/local/bin/g++-mp-12 option to support OpenMP... -fopenmp
checking whether we are building for a Win32 host... no
checking for pkg-config... /opt/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for libjpeg... yes
checking for libtiff-4... yes
checking for libpng... yes
checking for lcms2... yes
checking for exiv2... yes
checking for libraw... yes
checking for lensfun... yes
checking for rtprocess... yes
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for arpa/inet.h... yes
checking for locale.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for sys/time.h... yes
checking for unistd.h... (cached) yes
checking for _Bool... no
checking for stdbool.h that conforms to C99... yes
checking for inline... inline
checking for size_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: executing depfiles commands
---> Building rawproc
Executing: cd "/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_graphics_rawproc/rawproc/work/rawproc-1.3" && /usr/bin/make -j6 -w all
make: Entering directory `/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_graphics_rawproc/rawproc/work/rawproc-1.3'
Making all in src
make[1]: Entering directory `/opt/local/var/macports/build/_opt_PPCSnowLeopardPorts_graphics_rawproc/rawproc/work/rawproc-1.3/src'
/opt/local/bin/g++-mp-12 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Thu Jun 15 01:44:38 CST 2023"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -pipe -Os -D_GLIBCXX_USE_CXX11_ABI=0 -arch ppc -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT curve.o -MD -MP -MF .deps/curve.Tpo -c -o curve.o curve.cpp
/opt/local/bin/g++-mp-12 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Thu Jun 15 01:44:38 CST 2023"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -pipe -Os -D_GLIBCXX_USE_CXX11_ABI=0 -arch ppc -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT CurvePane.o -MD -MP -MF .deps/CurvePane.Tpo -c -o CurvePane.o CurvePane.cpp
/opt/local/bin/g++-mp-12 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Thu Jun 15 01:44:38 CST 2023"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -pipe -Os -D_GLIBCXX_USE_CXX11_ABI=0 -arch ppc -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT CameraData.o -MD -MP -MF .deps/CameraData.Tpo -c -o CameraData.o CameraData.cpp
/opt/local/bin/g++-mp-12 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Thu Jun 15 01:44:38 CST 2023"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -isystem/opt/local/include/LegacySupport -I/opt/local/include -fopenmp -pipe -Os -D_GLIBCXX_USE_CXX11_ABI=0 -arch ppc -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT elapsedtime.o -MD -MP -MF .deps/elapsedtime.Tpo -c -o elapsedtime.o elapsedtime.cpp
In file included from CurvePane.cpp:1:
CurvePane.h:5:10: fatal error: wx/wx.h: No such file or directory
5 | #include "wx/wx.h"
| ^~~~~~~~~
compilation terminated.
That should either be fixed or, if building without wxWidgets
makes no sense, then configure option should not be there, I guess.
I'm pretty sure I use some file stuff from wxWidgets that is only in 3.1...
The instructions in the README to build without wxWidgets are only to build img, the command line program. That's why the next lines in the README are cd src; make img
It may be that you have to build wxWidgets yourself. It is really pretty easy to do, their build system handles a lot of stuff automatically. The relevant instructions to do so are in the README, here:
https://github.com/butcherg/rawproc/blob/master/README.md?plain=1#L140
To include such in a rawproc build you use the --with-wx-config parameter in the ../configure command to specify the path to the wxWidgets wx-config script, see this line in the README:
https://github.com/butcherg/rawproc/blob/master/README.md?plain=1#L163
With 3.0 I run into missing SetDoubleBuffered
in CurvePane and myHistogramPane.
P. S. --with-wx-config works as intended.
@butcherg It took forever to return to this :)
I can confirm that img
target builds for me on 10.6 PowerPC (where wxWidgets 3.2 do not build at the moment).
I will add rawproc
to Macports. Thank you!
UPD. On Sonoma, however, it turns out that Clang is not happy with the code:
Default build errs out on:
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:27:
/opt/local/include/exiv2/basicio.hpp:524:9: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
524 | std::auto_ptr<Impl> p_;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:27:
/opt/local/include/exiv2/basicio.hpp:724:9: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
724 | std::auto_ptr<Impl> p_;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
Okay, I add -D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES
and try again:
gimage_parse.cpp:458:47: error: cannot pass object of non-trivial type 'mapped_type' (aka 'std::string') through variadic function; call will abort at runtime [-Wnon-pod-varargs]
458 | pmap["cmdlabel"] = string_format("curve:%s",pmap["channel"]);
| ^
gimage_parse.cpp:1083:20: warning: equality comparison result unused [-Wunused-comparison]
1083 | pmap["hmirror"] == "true";
| ~~~~~~~~~~~~~~~~^~~~~~~~~
gimage_parse.cpp:1083:20: note: use '=' to turn this equality comparison into an assignment
1083 | pmap["hmirror"] == "true";
| ^~
| =
gimage_parse.cpp:1086:20: warning: equality comparison result unused [-Wunused-comparison]
1086 | pmap["vmirror"] == "true";
| ~~~~~~~~~~~~~~~~^~~~~~~~~
gimage_parse.cpp:1086:20: note: use '=' to turn this equality comparison into an assignment
1086 | pmap["vmirror"] == "true";
| ^~
| =
gimage_parse.cpp:1095:22: warning: equality comparison result unused [-Wunused-comparison]
1095 | pmap["autocrop"] == "true";
| ~~~~~~~~~~~~~~~~~^~~~~~~~~
gimage_parse.cpp:1095:22: note: use '=' to turn this equality comparison into an assignment
1095 | pmap["autocrop"] == "true";
| ^~
| =
3 warnings and 1 error generated.
make[1]: *** [gimage_parse.o] Error 1
Then, I pass also -Wno-non-pod-varargs
, and it fails on:
In file included from rawimage.cpp:18:
./nikonlensid.h:731:10: error: expected ')'
731 | uint64_t htonll(uint64_t value)
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/sys/_endian.h:142:25: note: expanded from macro 'htonll'
142 | #define htonll(x) __DARWIN_OSSwapInt64(x)
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/libkern/_OSByteOrder.h:91:30: note: expanded from macro '__DARWIN_OSSwapInt64'
91 | (__builtin_constant_p(x) ? __DARWIN_OSSwapConstInt64(x) : _OSSwapInt64(x))
| ^
./nikonlensid.h:731:10: note: to match this '('
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/sys/_endian.h:142:25: note: expanded from macro 'htonll'
142 | #define htonll(x) __DARWIN_OSSwapInt64(x)
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/libkern/_OSByteOrder.h:91:5: note: expanded from macro '__DARWIN_OSSwapInt64'
91 | (__builtin_constant_p(x) ? __DARWIN_OSSwapConstInt64(x) : _OSSwapInt64(x))
| ^
In file included from rawimage.cpp:18:
./nikonlensid.h:731:10: error: cannot redeclare builtin function '__builtin_constant_p'
731 | uint64_t htonll(uint64_t value)
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/sys/_endian.h:142:25: note: expanded from macro 'htonll'
142 | #define htonll(x) __DARWIN_OSSwapInt64(x)
| ^
/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk/usr/include/libkern/_OSByteOrder.h:91:6: note: expanded from macro '__DARWIN_OSSwapInt64'
91 | (__builtin_constant_p(x) ? __DARWIN_OSSwapConstInt64(x) : _OSSwapInt64(x))
| ^
/opt/local/libexec/llvm-17/bin/../include/c++/v1/__utility/is_pointer_in_range.h:42:10: note: '__builtin_constant_p' is a builtin with type 'int (...) noexcept'
42 | if (!__builtin_constant_p(__begin <= __ptr && __ptr < __end))
| ^
2 errors generated.
make: *** [rawimage.o] Error 1
P. S. This is with Clang-17, since Apple Clang fails already on missing OpenMP support (and --disable-openmp
does not help).
@butcherg The last issue looks like this, I guess? https://github.com/Qihoo360/logkafka/issues/26
Okay, just pushed a commit to fix all of the above.
I just renamed htonll to something local; I'm not a network app so there.
gcc just ignores my horrid lack of discipline checking equality/assignment typos; if you find more of those let me know.
@butcherg Thank you, I will try to build it again.
@butcherg If I build from 8a2521b974d40005e7f1828ac51153e266fe7246 without extra flags passed, the build still fails on Sonoma:
/opt/local/bin/clang++-mp-17 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Wed Mar 27 16:08:24 CST 2024"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -fopenmp -pipe -Os -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT gimage.o -MD -MP -MF .deps/gimage.Tpo -c -o gimage.o gimage.cpp
img.cpp:298:10: warning: using the result of an assignment as a condition without parentheses [-Wparentheses]
298 | if (pos = std::string::npos) return "";
| ~~~~^~~~~~~~~~~~~~~~~~~
img.cpp:298:10: note: place parentheses around the assignment to silence this warning
298 | if (pos = std::string::npos) return "";
| ^
| ( )
img.cpp:298:10: note: use '==' to turn this assignment into an equality comparison
298 | if (pos = std::string::npos) return "";
| ^
| ==
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:54:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
54 | typedef std::auto_ptr<Value> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:256:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
256 | typedef std::auto_ptr<DataValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:338:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
338 | typedef std::auto_ptr<StringValueBase> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:420:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
420 | typedef std::auto_ptr<StringValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:452:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
452 | typedef std::auto_ptr<AsciiValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:540:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
540 | typedef std::auto_ptr<CommentValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:627:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
627 | typedef std::auto_ptr<XmpValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:718:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
718 | typedef std::auto_ptr<XmpTextValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:800:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
800 | typedef std::auto_ptr<XmpArrayValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:893:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
893 | typedef std::auto_ptr<LangAltValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:981:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
981 | typedef std::auto_ptr<DateValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:1082:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
1082 | typedef std::auto_ptr<TimeValue> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
In file included from /opt/local/include/exiv2/metadatum.hpp:27:
/opt/local/include/exiv2/value.hpp:1238:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
1238 | typedef std::auto_ptr<ValueType<T> > AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
In file included from /opt/local/include/exiv2/datasets.hpp:33:
/opt/local/include/exiv2/metadatum.hpp:47:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
47 | typedef std::auto_ptr<Key> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
mv -f .deps/curve.Tpo .deps/curve.Po
/opt/local/bin/clang++-mp-17 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Wed Mar 27 16:08:24 CST 2024"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -fopenmp -pipe -Os -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT gimage_cmd.o -MD -MP -MF .deps/gimage_cmd.Tpo -c -o gimage_cmd.o gimage_cmd.cpp
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:26:
/opt/local/include/exiv2/datasets.hpp:278:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
278 | typedef std::auto_ptr<IptcKey> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:27:
/opt/local/include/exiv2/basicio.hpp:58:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
58 | typedef std::auto_ptr<BasicIo> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:27:
/opt/local/include/exiv2/basicio.hpp:524:9: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
524 | std::auto_ptr<Impl> p_;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:27:
/opt/local/include/exiv2/basicio.hpp:724:9: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
724 | std::auto_ptr<Impl> p_;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
In file included from gimage.cpp:21:
In file included from /opt/local/include/exiv2/exiv2.hpp:28:
In file included from /opt/local/include/exiv2/bmffimage.hpp:27:
In file included from /opt/local/include/exiv2/image.hpp:28:
In file included from /opt/local/include/exiv2/exif.hpp:35:
/opt/local/include/exiv2/tags.hpp:143:17: error: no template named 'auto_ptr' in namespace 'std'; did you mean simply 'auto_ptr'?
143 | typedef std::auto_ptr<ExifKey> AutoPtr;
| ^~~~~~~~~~~~~
| auto_ptr
/opt/local/include/exiv2/config.h:105:3: note: 'auto_ptr' declared here
105 | using auto_ptr = std::unique_ptr<T>;
| ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
mv -f .deps/CameraData.Tpo .deps/CameraData.Po
/opt/local/bin/clang++-mp-17 -DPACKAGE_NAME=\"rawproc\" -DPACKAGE_TARNAME=\"rawproc\" -DPACKAGE_VERSION=\"1.3\" -DPACKAGE_STRING=\"rawproc\ 1.3\" -DPACKAGE_BUGREPORT=\"glenn.butcher@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"rawproc\" -DVERSION=\"1.3\" -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_ARPA_INET_H=1 -DHAVE_LOCALE_H=1 -DHAVE_STDINT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_SYS_TIME_H=1 -DHAVE_UNISTD_H=1 -I. -DBUILDDATE='"Wed Mar 27 16:08:25 CST 2024"' -I/opt/local/include/lensfun -I/opt/local/include/glib-2.0 -I/opt/local/lib/glib-2.0/include -I/opt/local/include/libraw -I/opt/local/include/libpng16 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -fopenmp -pipe -Os -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -DUSE_LENSFUN -DUSE_LIBRTPROCESS -MT gimage_parse.o -MD -MP -MF .deps/gimage_parse.Tpo -c -o gimage_parse.o gimage_parse.cpp
20 errors generated.
make: *** [gimage.o] Error 1
make: *** Waiting for unfinished jobs....
1 warning generated.
mv -f .deps/img.Tpo .deps/img.Po
gimage_parse.cpp:909:20: warning: & has lower precedence than >=; >= will be evaluated first [-Wparentheses]
909 | if (p.size() >=1 & p[0] == "ptlens") {
| ~~~~~~~~~~~~~^
gimage_parse.cpp:909:20: note: place parentheses around the '>=' expression to silence this warning
909 | if (p.size() >=1 & p[0] == "ptlens") {
| ^
| ( )
gimage_parse.cpp:909:20: note: place parentheses around the & expression to evaluate it first
909 | if (p.size() >=1 & p[0] == "ptlens") {
| ^
| ( )
gimage_parse.cpp:945:25: warning: & has lower precedence than >=; >= will be evaluated first [-Wparentheses]
945 | else if (p.size() >=1 & p[0] == "adobe") {
| ~~~~~~~~~~~~~^
gimage_parse.cpp:945:25: note: place parentheses around the '>=' expression to silence this warning
945 | else if (p.size() >=1 & p[0] == "adobe") {
| ^
| ( )
gimage_parse.cpp:945:25: note: place parentheses around the & expression to evaluate it first
945 | else if (p.size() >=1 & p[0] == "adobe") {
| ^
| ( )
gimage_parse.cpp:1008:20: warning: & has lower precedence than >=; >= will be evaluated first [-Wparentheses]
1008 | if (p.size() >=1 & p[0] == "pa") {
| ~~~~~~~~~~~~~^
gimage_parse.cpp:1008:20: note: place parentheses around the '>=' expression to silence this warning
1008 | if (p.size() >=1 & p[0] == "pa") {
| ^
| ( )
gimage_parse.cpp:1008:20: note: place parentheses around the & expression to evaluate it first
1008 | if (p.size() >=1 & p[0] == "pa") {
| ^
| ( )
gimage_parse.cpp:1035:25: warning: & has lower precedence than >=; >= will be evaluated first [-Wparentheses]
1035 | else if (p.size() >=1 & p[0] == "adobe") {
| ~~~~~~~~~~~~~^
gimage_parse.cpp:1035:25: note: place parentheses around the '>=' expression to silence this warning
1035 | else if (p.size() >=1 & p[0] == "adobe") {
| ^
| ( )
gimage_parse.cpp:1035:25: note: place parentheses around the & expression to evaluate it first
1035 | else if (p.size() >=1 & p[0] == "adobe") {
| ^
| ( )
mv -f .deps/gimage_cmd.Tpo .deps/gimage_cmd.Po
4 warnings generated.
It does succeed if I pass -D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES -Wno-non-pod-varargs
though.
The exiv2 problems are associated with an API change they did between 27 and 28. My exiv2 code is pretty localized, so I'll try to figure it out for 1.4
But my first priority will be to correct my shit code, which seems to be the rest of them...
Fixed the shit code, Made a local branch to figure out eviv2 28, that's going to take a bit. That, and msys2 and mxe still only package 27, so freaking conditionals...
@butcherg Please ping me when to test
Sorry, sidetracked by other projects and spring household chores. What's left are doc updates, then update the release build system and crank out the products. I'll try to get that done this week.
Okay, took a little longer than a week, done.
@butcherg Hmm, does not work for me on Sonoma:
/usr/bin/clang++ -DWXUSINGDLL -D_FILE_OFFSET_BITS=64 -D__WXMAC__ -D__WXOSX_COCOA__ -D__WXOSX__ -I/opt/local/include -I/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/. -I/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/gimage -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/lib/wx/include/osx_cocoa-unicode-3.2 -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/include/wx-3.2 -pipe -Os -DNDEBUG -I/opt/local/include -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -mmacosx-version-min=14.0 -ggdb -DVERSION=\"1.4.0\" -DBUILDDATE=\"2024-06-06T00:21:34\" -MD -MT CMakeFiles/img.dir/src/img.cpp.o -MF CMakeFiles/img.dir/src/img.cpp.o.d -o CMakeFiles/img.dir/src/img.cpp.o -c /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/img.cpp
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/exif.cpp:7:
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/gimage/gimage.h:355:90: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/gimage/gimage.h:355:126: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/img.cpp:18:
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:90: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:126: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
2 errors generated.
make[2]: *** [CMakeFiles/exif.dir/src/exif.cpp.o] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build'
make[1]: *** [CMakeFiles/exif.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
[ 4%] Building CXX object CMakeFiles/rawproc.dir/src/rawprocFrm.cpp.o
/usr/bin/clang++ -DWXUSINGDLL -D_FILE_OFFSET_BITS=64 -D__WXMAC__ -D__WXOSX_COCOA__ -D__WXOSX__ -I/opt/local/include -I/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/. -I/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/gimage -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/lib/wx/include/osx_cocoa-unicode-3.2 -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/include/wx-3.2 -pipe -Os -DNDEBUG -I/opt/local/include -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -mmacosx-version-min=14.0 -ggdb -DVERSION=\"1.4.0\" -DBUILDDATE=\"2024-06-06T00:21:34\" -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/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/rawprocFrm.cpp
2 errors generated.
make[2]: *** [CMakeFiles/img.dir/src/img.cpp.o] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build'
make[1]: *** [CMakeFiles/img.dir/all] Error 2
[ 5%] Building CXX object CMakeFiles/rawproc.dir/src/CurvePane.cpp.o
/usr/bin/clang++ -DWXUSINGDLL -D_FILE_OFFSET_BITS=64 -D__WXMAC__ -D__WXOSX_COCOA__ -D__WXOSX__ -I/opt/local/include -I/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/. -I/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/gimage -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/lib/wx/include/osx_cocoa-unicode-3.2 -isystem /opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/include/wx-3.2 -pipe -Os -DNDEBUG -I/opt/local/include -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -mmacosx-version-min=14.0 -ggdb -DVERSION=\"1.4.0\" -DBUILDDATE=\"2024-06-06T00:21:34\" -MD -MT CMakeFiles/rawproc.dir/src/CurvePane.cpp.o -MF CMakeFiles/rawproc.dir/src/CurvePane.cpp.o.d -o CMakeFiles/rawproc.dir/src/CurvePane.cpp.o -c /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/CurvePane.cpp
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/rawprocApp.cpp:10:
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./rawprocApp.h:23:
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./rawprocFrm.h:52:
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:90: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:126: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
2 errors generated.
make[2]: *** [CMakeFiles/rawproc.dir/src/rawprocApp.cpp.o] Error 1
make[2]: *** Waiting for unfinished jobs....
[ 6%] Linking CXX executable wxcmd
/opt/local/bin/cmake -E cmake_link_script CMakeFiles/wxcmd.dir/link.txt --verbose=ON
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/CurvePane.cpp:8:
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./util.h:11:
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:90: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:126: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
/usr/bin/clang++ -pipe -Os -DNDEBUG -I/opt/local/include -stdlib=libc++ -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk -mmacosx-version-min=14.0 -Wl,-search_paths_first -Wl,-headerpad_max_install_names -L/opt/local/lib -Wl,-headerpad_max_install_names -Wl,-syslibroot,/Library/Developer/CommandLineTools/SDKs/MacOSX14.sdk CMakeFiles/wxcmd.dir/src/wxcmd.cpp.o -o wxcmd -Wl,-rpath,/opt/local/lib -L/opt/local/Library/Frameworks/wxWidgets.framework/Versions/wxWidgets/3.1/lib -framework IOKit -framework Carbon -framework Cocoa -framework QuartzCore -framework AudioToolbox -framework System -framework OpenGL -lwx_osx_cocoau_aui-3.2 -lwx_osx_cocoau_propgrid-3.2 -lwx_osx_cocoau_xrc-3.2 -lwx_osx_cocoau_html-3.2 -lwx_osx_cocoau_qa-3.2 -lwx_osx_cocoau_core-3.2 -lwx_baseu_xml-3.2 -lwx_baseu_net-3.2 -lwx_baseu-3.2
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/rawprocFrm.cpp:11:
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./rawprocFrm.h:52:
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:90: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./gimage/gimage.h:355:126: error: a space is required between consecutive right angle brackets (use '> >')
GIMAGE_ERROR ApplyDistortionCorrectionAdobeWarpRetilinear(std::vector<std::vector<float>> kr, std::vector<std::vector<float>> kt, float cpx, float cpy, int threadcount); //full adobe opcode implementation, including distinct sets of k parameters for each plane of the image
^~
> >
2 errors generated.
make[2]: *** [CMakeFiles/rawproc.dir/src/CurvePane.cpp.o] Error 1
In file included from /opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/rawprocFrm.cpp:37:
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./PicProcessorTone.h:1:9: warning: '__PICPROCESSORTONE_H__' is used as a header guard here, followed by #define of a different macro [-Wheader-guard]
#ifndef __PICPROCESSORTONE_H__
^~~~~~~~~~~~~~~~~~~~~~
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/./PicProcessorTone.h:2:9: note: '__PICPROCESSORTone_H__' is defined here; did you mean '__PICPROCESSORTONE_H__'?
#define __PICPROCESSORTone_H__
^~~~~~~~~~~~~~~~~~~~~~
__PICPROCESSORTONE_H__
/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/rawproc-1.4.0/src/rawprocFrm.cpp:74:10: fatal error: 'omp.h' file not found
#include <omp.h>
^~~~~~~
1 warning and 3 errors generated.
make[2]: *** [CMakeFiles/rawproc.dir/src/rawprocFrm.cpp.o] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build'
make[1]: *** [CMakeFiles/rawproc.dir/all] Error 2
ld: warning: reexported library with install name '/opt/local/lib/libunwind.1.dylib' found at '/opt/local/lib/libunwind.1.dylib' couldn't be matched with any parent library and will be linked directly
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build'
[ 6%] Built target wxcmd
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build'
make: *** [all] Error 2
make: Leaving directory `/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build'
Command failed: cd "/opt/local/var/macports/build/_opt_svacchanda_SonomaPorts_graphics_rawproc/rawproc/work/build" && /usr/bin/make -j4 -w all VERBOSE=ON
Exit code: 2
pushed commits to fix the syntax foo, not sure what to do about "fatal error: 'omp.h' file not found".
pushed commits to fix the syntax foo, not sure what to do about "fatal error: 'omp.h' file not found".
Ah, that is because I used Apple Clang, which does not support OpenMP.
While this I can fix on my end, the right thing to do would be to have a configure check: it should fail already at configure if OpenMP support is not found (but required).
I'll put in the cmake check, but I'll also look to see if the header is still needed.
On June 5, 2024 12:01:28 PM MDT, Sergey Fedorov @.***> wrote:
pushed commits to fix the syntax foo, not sure what to do about "fatal error: 'omp.h' file not found".
Ah, that is because I used Apple Clang, which does not support OpenMP.
While this I can fix on my end, the right thing to do would be to have a configure check: it should fail already at configure if OpenMP support is not found (but required).
-- Reply to this email directly or view it on GitHub: https://github.com/butcherg/rawproc/issues/25#issuecomment-2150645284 You are receiving this because you were mentioned.
Message ID: @.***> -- Sent from my Android device with K-9 Mail. Please excuse my brevity.
@butcherg Ok, using LLVM Clang and passing flags to link to libomp
, I was able to build it on Sonoma.
However, as before, I had to use
configure.cxxflags-append \
-D_LIBCPP_ENABLE_CXX17_REMOVED_FEATURES \
-Wno-non-pod-varargs
Without these flags build is failing.
But that was an exiv2
issue, I guess. We can add flags locally for MacPorts.
P. S. Looks like there is no install target?
@butcherg How should I start the GUI btw? wxcmd
opens a king of terminal where I can type in text and which has two buttons below: Kiss and Dismiss
and Kill
.
rawproc
just segfaults on launch:
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------
Process: rawproc [4522]
Path: /opt/local/bin/rawproc
Identifier: rawproc
Version: ???
Code Type: ARM-64 (Native)
Parent Process: zsh [4515]
Responsible: Terminal [76267]
User ID: 501
Date/Time: 2024-06-06 03:04:46.3498 +0800
OS Version: macOS 14.5 (23F79)
Report Version: 12
Anonymous UUID: 08288255-726E-11E3-9DE3-9407366F4C9A
Sleep/Wake UUID: BF8A344A-2C32-47B2-A928-A055A6FE685D
Time Awake Since Boot: 220000 seconds
Time Since Wake: 1890 seconds
System Integrity Protection: enabled
Crashed Thread: 0 Dispatch queue: com.apple.main-thread
Exception Type: EXC_BREAKPOINT (SIGTRAP)
Exception Codes: 0x0000000000000001, 0x000000018da30960
Termination Reason: Namespace SIGNAL, Code 5 Trace/BPT trap: 5
Terminating Process: exc handler [4522]
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 libunwind.dylib 0x18da30960 _Unwind_GetIP + 244
1 libc++abi.dylib 0x180da0aa4 __gxx_personality_v0 + 588
2 libunwind.1.dylib 0x102e41144 unwind_phase2 + 140
3 libunwind.1.dylib 0x102e411d0 _Unwind_Resume + 52
4 rawproc 0x1025a920c getExeDir(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>) + 360
5 rawproc 0x1025a9544 getRawprocConfPath(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>) + 60
6 rawproc 0x102467e7c rawprocFrmApp::OnInit() + 300
7 libwx_osx_cocoau_core-3.2.0.2.2.dylib 0x1038b07a8 wxApp::CallOnInit() + 152
8 libwx_baseu-3.2.0.2.2.dylib 0x1034799e8 wxEntry(int&, wchar_t**) + 80
9 rawproc 0x102469084 main + 52
10 dyld 0x180a5e0e0 start + 2360
Rebuilding with wxGTK-3.0
instead of wxWidgets-3.2
produces the same result (with a difference that wxcmd
launches X window).
There is not. Ran out of steam...
If you need it, I'll work one up.
On June 5, 2024 12:51:05 PM MDT, Sergey Fedorov @.***> wrote:
P. S. Looks like there is no install target?
-- Reply to this email directly or view it on GitHub: https://github.com/butcherg/rawproc/issues/25#issuecomment-2150736889 You are receiving this because you were mentioned.
Message ID: @.***> -- Sent from my Android device with K-9 Mail. Please excuse my brevity.
Wxcmd is a simple shell for running img from the batch dialog.
On June 5, 2024 1:07:58 PM MDT, Sergey Fedorov @.***> wrote:
@butcherg How should I start the GUI btw?
wxcmd
opens a king of terminal where I can type in text and which has two buttons below:Kiss and Dismiss
andKill
.rawproc
just segfaults on launch:------------------------------------- Translated Report (Full Report Below) ------------------------------------- Process: rawproc [4522] Path: /opt/local/bin/rawproc Identifier: rawproc Version: ??? Code Type: ARM-64 (Native) Parent Process: zsh [4515] Responsible: Terminal [76267] User ID: 501 Date/Time: 2024-06-06 03:04:46.3498 +0800 OS Version: macOS 14.5 (23F79) Report Version: 12 Anonymous UUID: 08288255-726E-11E3-9DE3-9407366F4C9A Sleep/Wake UUID: BF8A344A-2C32-47B2-A928-A055A6FE685D Time Awake Since Boot: 220000 seconds Time Since Wake: 1890 seconds System Integrity Protection: enabled Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000001, 0x000000018da30960 Termination Reason: Namespace SIGNAL, Code 5 Trace/BPT trap: 5 Terminating Process: exc handler [4522] Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libunwind.dylib 0x18da30960 _Unwind_GetIP + 244 1 libc++abi.dylib 0x180da0aa4 __gxx_personality_v0 + 588 2 libunwind.1.dylib 0x102e41144 unwind_phase2 + 140 3 libunwind.1.dylib 0x102e411d0 _Unwind_Resume + 52 4 rawproc 0x1025a920c getExeDir(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>) + 360 5 rawproc 0x1025a9544 getRawprocConfPath(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>) + 60 6 rawproc 0x102467e7c rawprocFrmApp::OnInit() + 300 7 libwx_osx_cocoau_core-3.2.0.2.2.dylib 0x1038b07a8 wxApp::CallOnInit() + 152 8 libwx_baseu-3.2.0.2.2.dylib 0x1034799e8 wxEntry(int&, wchar_t**) + 80 9 rawproc 0x102469084 main + 52 10 dyld 0x180a5e0e0 start + 2360
-- Reply to this email directly or view it on GitHub: https://github.com/butcherg/rawproc/issues/25#issuecomment-2150767579 You are receiving this because you were mentioned.
Message ID: @.***> -- Sent from my Android device with K-9 Mail. Please excuse my brevity.
There is not. Ran out of steam... If you need it, I'll work one up.
I can do a manual install via portfile code, that is no big deal, but at the moment I am not sure binaries actually work as supposed. I will try building on PowerPC once the machine is done with building the new Octave.
Wxcmd is a simple shell for running img from the batch dialog.
Ok, then that is working, perhaps.
I'll have to inspect GetExe() to see what's up. Will do that tonight...
Please, since segfaulting on launch looks definitely wrong.
I'll have to inspect GetExe() to see what's up. Will do that tonight...
On June 5, 2024 1:07:58 PM MDT, Sergey Fedorov @.***> wrote:
@butcherg How should I start the GUI btw?
wxcmd
opens a king of terminal where I can type in text and which has two buttons below:Kiss and Dismiss
andKill
.rawproc
just segfaults on launch:------------------------------------- Translated Report (Full Report Below) ------------------------------------- Process: rawproc [4522] Path: /opt/local/bin/rawproc Identifier: rawproc Version: ??? Code Type: ARM-64 (Native) Parent Process: zsh [4515] Responsible: Terminal [76267] User ID: 501 Date/Time: 2024-06-06 03:04:46.3498 +0800 OS Version: macOS 14.5 (23F79) Report Version: 12 Anonymous UUID: 08288255-726E-11E3-9DE3-9407366F4C9A Sleep/Wake UUID: BF8A344A-2C32-47B2-A928-A055A6FE685D Time Awake Since Boot: 220000 seconds Time Since Wake: 1890 seconds System Integrity Protection: enabled Crashed Thread: 0 Dispatch queue: com.apple.main-thread Exception Type: EXC_BREAKPOINT (SIGTRAP) Exception Codes: 0x0000000000000001, 0x000000018da30960 Termination Reason: Namespace SIGNAL, Code 5 Trace/BPT trap: 5 Terminating Process: exc handler [4522] Thread 0 Crashed:: Dispatch queue: com.apple.main-thread 0 libunwind.dylib 0x18da30960 _Unwind_GetIP + 244 1 libc++abi.dylib 0x180da0aa4 __gxx_personality_v0 + 588 2 libunwind.1.dylib 0x102e41144 unwind_phase2 + 140 3 libunwind.1.dylib 0x102e411d0 _Unwind_Resume + 52 4 rawproc 0x1025a920c getExeDir(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>) + 360 5 rawproc 0x1025a9544 getRawprocConfPath(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char>>) + 60 6 rawproc 0x102467e7c rawprocFrmApp::OnInit() + 300 7 libwx_osx_cocoau_core-3.2.0.2.2.dylib 0x1038b07a8 wxApp::CallOnInit() + 152 8 libwx_baseu-3.2.0.2.2.dylib 0x1034799e8 wxEntry(int&, wchar_t**) + 80 9 rawproc 0x102469084 main + 52 10 dyld 0x180a5e0e0 start + 2360
-- Reply to this email directly or view it on GitHub: https://github.com/butcherg/rawproc/issues/25#issuecomment-2150767579 You are receiving this because you were mentioned.
Message ID: @.***> -- Sent from my Android device with K-9 Mail. Please excuse my brevity.
Keep feeding me errors and backtraces and I'll work them...
On June 5, 2024 1:36:52 PM MDT, Sergey Fedorov @.***> wrote:
There is not. Ran out of steam... If you need it, I'll work one up.
I can do a manual install via portfile code, that is no big deal, but at the moment I cam not sure binaries actually work as supposed. I will try building on PowerPC once the machine is done with building the new Octave.
-- Reply to this email directly or view it on GitHub: https://github.com/butcherg/rawproc/issues/25#issuecomment-2150817071 You are receiving this because you were mentioned.
Message ID: @.***> -- Sent from my Android device with K-9 Mail. Please excuse my brevity.
Pretty much the same on PowerPC: wxcmd
launches X window, everything else crashes on launch.
rawproc
:
*** Caught unhandled unknown exception; terminating
Reading symbols for shared libraries .. done
Program exited with code 0377.
(gdb) bt
No stack.
img
:
terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::erase: __pos (which is 4294967295) > this->size() (which is 0)
Program received signal SIGABRT, Aborted.
0x013f1d48 in __kill ()
(gdb) bt
#0 0x013f1d48 in __kill ()
#1 0x0149580c in abort ()
#2 0x011129c8 in __gnu_cxx::__verbose_terminate_handler ()
#3 0x0110c85c in __cxa_get_globals ()
#4 0x0110c8b0 in std::terminate ()
#5 0x0110c9bc in __cxa_throw ()
#6 0x0110d07c in std::__throw_out_of_range_fmt ()
#7 0x00067f70 in getExeDir ()
#8 0x000681e8 in getRawprocConfPath ()
#9 0x0007c7d8 in main ()
(gdb) info registers
r0 0x25 37
r1 0xbfffebf0 3221220336
r2 0x266 614
r3 0x0 0
r4 0x0 0
r5 0x1 1
r6 0x80808080 2155905152
r7 0x1 1
r8 0xb8b1aabc 3098651324
r9 0x157cedc 22531804
r10 0x13bdbc4 20700100
r11 0x14f9 5369
r12 0x13f1d34 20913460
r13 0x0 0
r14 0x0 0
r15 0x0 0
r16 0x0 0
r17 0x0 0
r18 0x0 0
r19 0x0 0
r20 0x0 0
r21 0xbffff9e0 3221223904
r22 0x9c6a0 640672
r23 0xbffff628 3221222952
r24 0xbffffb24 3221224228
r25 0xbffff4c4 3221222596
r26 0xbffff4bc 3221222588
r27 0xbffff4b8 3221222584
r28 0x8a27bd0 144866256
r29 0x8a2648c 144860300
r30 0x1544840 22300736
r31 0x14957a0 21583776
pc 0x13f1d48 20913480
ps 0x100000000200f030 1152921504640462896
cr 0x22000442 570426434
lr 0x149580c 21583884
ctr 0x13f1d34 20913460
xer 0x0 0
mq 0x0 0
fpscr 0x82004000 2181054464
vscr 0x10000 65536
vrsave 0xfff 4095
(This is just when trying to run binaries with no args passed.)
So, GetExeDir() has an #ifdef for WIN32, and the #else assumes Linux. Thanks to StackOverflow, I found macos code to do what's needed, just pushed, please test...
oops, forgot include, another commit...
@butcherg Now the app starts normally. But some menus appear wrong:
I think what's happening is the Perl script that builds rawproc.conf is spitting out UTF-16. Put this at the top of conffile.pl, just below the #!/user/bin/perl:
binmode(STDOUT, ":utf8");
and re-run make conf
I rebuilt with that, but got the same result with Properties menu.
Can you upload your rawproc.conf?
Where is supposed to be? Home folder does not seem to have it.
If it should be created manually – well, I did not do that, I just built the thing, moved 4 binaries to /opt/local/bin
and added wrappers so that they pick the right libstdc++
(this is MacOS specifics on legacy systems).
Did I miss something with installation?
P. S. In Parameters square there apparently should be some text beside numbers? Otherwise it is unclear what is it.
Not sure if relevant, but this was in terminal while running rawproc
:
(rawproc-orig:67296): GLib-WARNING **: 10:54:37.950: poll(2) failed due to: Bad file descriptor.
(-orig
is correct, it is the actual binary, just renamed, since rawproc
is a wrapper script calling it.)
Hmm, then it may be that rawproc doesn't see any rawproc.conf.
The README has build instructions, here: https://github.com/butcherg/rawproc#minimal-build, after you run make, next command is make conf, which runs conffile.pl, which scrapes all the .cpp files for //parm lines to build a rawproc.conf.
Move the generated rawproc.conf to /opt/local/bin and when you run rawproc it'll read it. A better location would be in your home directory, make a .rawproc directory and put it there.
'poll(2) failed'... could be the missing rawproc.conf.
@butcherg Ok, I will try. I was using CMake btw, should I not use it? Or it is supposed to be identical up to installation stage?
Definitely use cmake, I spent a lot of time hammering that into submission... :D
I just hid all my rawproc.conf files and I get a black background like you did, but it give me the error dialog when I try to open Properties. I think we're getting close...
When I start the app, it complains about failing to add /opt/local/bin/rawprocdoc.zip
(yeah, in /bin LOL), which is obviously not there and should not be.
On Sonoma Properties do not have broken characters, but the menu is distorted with endless empty sections.
@butcherg Ok, I figured out how to add conf
target. Will check how it works.
UPD. I think it works now. Will try on PowerPC.
@butcherg I got a strange issue on PowerPC: adding a generated config fixes display of text (like it does on Sonoma too), but all raw images suddenly become extremely dark, almost black. Jpegs seem to be unaffected.
(The binary is fine, since when I trashed the config, I got normal raw images, but broken text.)
Ah, now you're into nominal rawproc behavior, even though it doesn't look like it...
Back when I first started coding rawproc, I used libraw's dcraw processing to get through the first steps of raw processing. Later, I came to the decision that I wanted every tool used from import to export represented in the toolchain, so I made a property, input.raw.libraw.rawdata, where i could control whether dcraw was or wasn't used. I also overloaded it to control border crop, not so sure that was a good decision, but oh well...
So, input.raw.libraw.rawdata has three possible settings: 0 = use dcraw processing to make a RGB image, 1 = present the raw data from the file, single-channel mosaic, and crop = same as 1, but also crop the black sensor borders. When you had no configuration file, the default for this property is 0, so you were seeing dcraw-processed RGB data.
So, the reason your image looks dark is that the raw loader is setting this property to 1 for a default, and there's no input.raw.libraw.rawdata property to override it. Set the following properties thusly:
input.raw.libraw.rawdata=crop
input.raw.default=group:colorspace:camera,assign;subtract:camera;whitebalance:camera;demosaic:proof blackwhitepoint:rgb,data
and now, when you open any raw image, it'll start with the unmodified file data and prompt you to use the toolchain in input.raw.default. The image will still be dark, but that's the nature of the linear data.
Two more settings to start with:
display.cms=1
display.cms.displayprofile=srgb-output
The first one turns display color management on and off, set this to 1.
The second one sets a display profile that's used to render the data to the display; set to srgb-output, which is a built-in default profile. Later, I'll show you how to set up a profiles directory so you can use profile files.
Just tested, for color management all you need is display.cms=1. srgb-output is the default if no display profile is specified.
I made the default background color for all such properties 128, so what you encountered without a rawproc.conf won't happen.
Also, is there anything x86-only? I am interested to build it for PowerPC.