‘GIMP_LAYER_MODE_NORMAL’ was not declared in this scope

When trying to compile G’MIC 2.0.0 for inclusion in Sabayon, compilation fails with:

/var/tmp/portage/media-gfx/gmic-2.0.0/work/gmic-2.0.0/src/gmic_gimp_gtk.cpp:392:26: error: ‘GIMP_LAYER_MODE_NORMAL’ was not declared in this scope

https://bugs.sabayon.org/show_bug.cgi?id=5423#c5

Is this resolved in 2.0.2 or will it be resolved in 2.0.3?

I’ve just tried compiling the G’MIC plug-in (sources freshly cloned from git master) on Ubuntu 16.04 (Xenial) with the gimp-edge PPA from Otto : Packages in “gimp-edge” : gimp-edge : otto06217
This PPA provides a quite up-to-date version of the GIMP (development version from git master, dated from 08/14).

Right now, GIMP 2.9 is dated from 2017/08/14 ,i.e. this commit : https://git.gnome.org/browse/gimp/commit/?id=d875f24e663886f59b70ca65daba76d46bb7b642

With this configuration, both the gmic_gimp_qt and gmic_gimp_gtk plug-ins are compiling and are working fine.

I then suspect your GIMP-dev version in Sabayon to be too old. I know that there have been API changes recently, concerning the layer blending enums, so maybe they are not up-to-date on your system. If that is the case, please upgrade GIMP 2.9 to a more recent development version.

Here, I try to make G’MIC compiling with the very latest development version of GIMP 2.9, as the changes are made, but I don’t plan to support intermediate API changes in the GIMP 2.9 branch (obviously!). The goal for us is to minimize the work to make it compile when the next stable version of GIMP (2.10) will be out.

So to me, it looks much like a problem with your GIMP-dev package in Sabayon.

1 Like