Compile Fail with /usr/share/gobject-introspection-1.0/Makefile.introspection:150: *** Need to define Gegl_0_2_gir_FILES Reproducible: Always
Created attachment 312247 [details, diff] Patch to fix Makefile thanks to PLD Linux : http://cvs.pld-linux.org/cgi-bin/viewvc.cgi/cvs/packages/gegl/gegl-introspection.patch?view=markup
Workaround for possibly next problem : After patching, if compile fail @GISCAN Gegl-0.2.gir, relaunch make manualy should (works for me) finish the compilation : cd /var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0 make ebuild /usr/portage/media-libs/gegl/gegl-0.2.0.ebuild compile merge
I can confirm that I was able to emerge gegl-0.2.0 with the introspection USE flag, by first applying the patch from comment #1, (localpatch worked fine), and then when the emerge fails at; --------------------------------------------------------- make[3]: Entering directory `/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl' CC gegl-c.lo CC gegl-apply.lo CC gegl-cpuaccel.lo CC gegl-config.lo CC gegl-dot.lo CC gegl-dot-visitor.lo CC gegl-enums.lo CC gegl-init.lo CC gegl-instrument.lo CC gegl-utils.lo CC gegl-lookup.lo CC gegl-xml.lo CC gegl-matrix.lo CCLD libgegl-0.2.la GISCAN Gegl-0.2.gir <command-line>:0:15: warning: missing terminating " character [enabled by default] /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c: In function ‘escaped_printf’: /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c:58:7: error: stray ‘\’ in program /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c:58:7: error: missing terminating " character /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c:58:7: error: expected expression before ‘,’ token /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c: In function ‘goutput_write’: /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c:73:7: error: stray ‘\’ in program /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c:73:7: error: missing terminating " character /tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c:73:7: error: expected expression before ‘,’ token compilation of temporary binary failed:Command '['gcc', '-Wall', '-pthread', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-march=native', '-O2', '-pipe', '-mmmx', '-msse', '-ftree-vectorize', '-ffast-math', '-Wall', '-Wdeclaration-after-statement', '-Wmissing-prototypes', '-Wmissing-declarations', '-Winit-self', '-Wpointer-arith', '-Wold-style-definition', '-DG_LOG_DOMAIN=\\"GEGL-\\"__FILE__', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-I/usr/include/babl-0.1', '-I..', '-I../gegl', '-I../gegl/buffer', '-I../gegl/buffer', '-I../gegl/property-types', '-I../gegl/property-types', '-I../gegl/operation', '-I../gegl/operation', '-I../gegl/opencl', '-I../gegl/opencl', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-c', '-o', '/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.o', '/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl/tmp-introspectC9Zj9Z/Gegl-0.2.c']' returned non-zero exit status 1 make[3]: *** [Gegl-0.2.gir] Error 1 make[3]: Leaving directory `/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0' make: *** [all] Error 2 * ERROR: media-libs/gegl-0.2.0 failed (compile phase): --------------------------------------------------------- changing to the work directory and issuing a make, and then ebuild [...] compile merge.
what i did wrong? 1) i started emerge -1 gegl. 2) after breaks i go to "/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0" 3) wget https://bugs.gentoo.org/attachment.cgi?id=312247 4) mv attachment.cgi?id=312247 test.patch 5) patch test.patch gegl/Makefile.am result: make all-recursive make[1]: Entering directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0' Making all in libs make[2]: Entering directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/libs' Making all in rgbe make[3]: Entering directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/libs/rgbe' make[3]: Nothing to be done for `all'. make[3]: Leaving directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/libs/rgbe' make[3]: Entering directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/libs' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/libs' make[2]: Leaving directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/libs' Making all in gegl make[2]: Entering directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl' /usr/share/gobject-introspection-1.0/Makefile.introspection:150: *** Need to define Gegl_0_2_gir_FILES. Stop. make[2]: Leaving directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0/gegl' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0' make: *** [all] Error 2
(In reply to comment #4) > what i did wrong? > > 1) i started emerge -1 gegl. > 2) after breaks i go to > "/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0" > 3) wget https://bugs.gentoo.org/attachment.cgi?id=312247 > 4) mv attachment.cgi?id=312247 test.patch > 5) patch test.patch gegl/Makefile.am > You need to apply the patch when you emerge gegl, not after. Then when the emerge breaks, follow the steps from comment #2; cd /var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0 make ebuild /usr/portage/media-libs/gegl/gegl-0.2.0.ebuild compile merge Good Luck..
(In reply to comment #5) > (In reply to comment #4) > > what i did wrong? > > > > 1) i started emerge -1 gegl. > > 2) after breaks i go to > > "/var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0" > > 3) wget https://bugs.gentoo.org/attachment.cgi?id=312247 > > 4) mv attachment.cgi?id=312247 test.patch > > 5) patch test.patch gegl/Makefile.am > > > > You need to apply the patch when you emerge gegl, not after. Then when the > emerge breaks, follow the steps from comment #2; > > cd /var/tmp/portage/media-libs/gegl-0.2.0/work/gegl-0.2.0 > make > ebuild /usr/portage/media-libs/gegl/gegl-0.2.0.ebuild compile merge > > Good Luck.. thanks there is a modified ebuild of gegl, which use the patch? i download the patch into "/usr/portage/media-libs/gegl/files", but it semms to not automaticaly apply the patch at emerge. so how should i appply the patch else before i emerge?
(In reply to comment #6) > > thanks there is a modified ebuild of gegl, which use the patch? > > i download the patch into "/usr/portage/media-libs/gegl/files", but it semms > to not automaticaly apply the patch at emerge. so how should i appply the > patch else before i emerge? There's no modified ebuild in the bug report. One method to apply the patch is to copy the ebuild to your local portage directory, (and rename it to gegl-0.2.0-r1.ebuild), add the patch to the files directory there, and then modify the ebuild to apply the patch. You shouldn't modify your portage tree by adding patches to the files directory, or modifying ebuilds there directly. That's what the local portage directory is for. Good Luck..
(In reply to comment #7) > (In reply to comment #6) > > > > thanks there is a modified ebuild of gegl, which use the patch? > > > > i download the patch into "/usr/portage/media-libs/gegl/files", but it semms > > to not automaticaly apply the patch at emerge. so how should i appply the > > patch else before i emerge? > > There's no modified ebuild in the bug report. One method to apply the patch > is to copy the ebuild to your local portage directory, (and rename it to > gegl-0.2.0-r1.ebuild), add the patch to the files directory there, and then > modify the ebuild to apply the patch. > > You shouldn't modify your portage tree by adding patches to the files > directory, or modifying ebuilds there directly. That's what the local > portage directory is for. > > Good Luck.. thanks it woorks :))
Yes, patching the makefile and then rerunning the make and manually merging solves the problem. It would be nice if we can fix it so that we don't need to manually continue the build process though. But thanks :-)
Using the patch, the *** Need to define Gegl_0_2_gir_FILES. Stop. error is gone, and now I end up with the same error as Jason in comment 3.
Upstream have fixed it themselves by now: https://git.gnome.org/browse/gegl/commit/gegl/Makefile.am?id=35469116fbf0b398d748f8116e4dcc8bdaee12c7 I have applied that to the ebuild now: + 28 Apr 2013; Sebastian Pipping <sping@gentoo.org> gegl-0.2.0-r1.ebuild, + +files/gegl-0.2.0-introspection-version.patch: + Use upstream patch to fix introspection version (bug #416587) + However, don't expect the build to finish without Babl-0.1.gir from >=media-libs/babl-0.1.10[introspection] which is hard to satisfy still. Let me quite from profiles/base/package.use.mask: # Compilation fails due to a bug in dev-libs/gobject-introspection # that has yet to be resolved upstream. # See <https://bugzilla.gnome.org/show_bug.cgi?id=673580#c5> for details >=media-libs/babl-0.1.8 introspection I am in doubt about applying this patch as well: https://git.gnome.org/browse/gegl/commit/gegl/Makefile.am?id=7dcbb7321357166d36a9bf379efde7ad87fc4c17
+ 30 Apr 2013; Sebastian Pipping <sping@gentoo.org> gegl-0.2.0-r1.ebuild, + +files/gegl-0.2.0-g_log_domain.patch: + Apply experimental fix for G_LOG_DOMAIN related compile errors (bug #416587) + Previously, double escaping of -DG_LOG_DOMAIN=\"GEGL-\"__FILE__ to -DG_LOG_DOMAIN=\\"GEGL-\\"__FILE__ led to this error: ==================================================== g-ir-scanner: compile: gcc -Wall -pthread -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -march=core2 -msse4.1 -O2 -pipe -mmmx -msse -ftree-vectorize -ffast-math -Wall -Wdeclaration-after-statement -Wmissing-prototypes -Wmissing-declarations -Winit-self -Wpointer-arith -Wold-style-definition -DG_LOG_DOMAIN=\\\"GEGL-\\\"__FILE__ -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/babl-0.1 -I.. -I../gegl -I../gegl/buffer -I../gegl/buffer -I../gegl/property-types -I../gegl/property-types -I../gegl/operation -I../gegl/operation -I../gegl/opencl -I../gegl/opencl -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -c -o /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.o /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c <command-line>:0:15: warning: missing terminating " character /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c: In function ‘escaped_printf’: /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c:58:7: error: stray ‘\’ in program /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c:58:7: error: missing terminating " character /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c:58:7: error: expected expression before ‘,’ token /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c: In function ‘goutput_write’: /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c:73:7: error: stray ‘\’ in program /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c:73:7: error: missing terminating " character /var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c:73:7: error: expected expression before ‘,’ token compilation of temporary binary failed:Command '['gcc', '-Wall', '-pthread', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-march=core2', '-msse4.1', '-O2', '-pipe', '-mmmx', '-msse', '-ftree-vectorize', '-ffast-math', '-Wall', '-Wdeclaration-after-statement', '-Wmissing-prototypes', '-Wmissing-declarations', '-Winit-self', '-Wpointer-arith', '-Wold-style-definition', '-DG_LOG_DOMAIN=\\"GEGL-\\"__FILE__', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-I/usr/include/babl-0.1', '-I..', '-I../gegl', '-I../gegl/buffer', '-I../gegl/buffer', '-I../gegl/property-types', '-I../gegl/property-types', '-I../gegl/operation', '-I../gegl/operation', '-I../gegl/opencl', '-I../gegl/opencl', '-I/usr/include/glib-2.0', '-I/usr/lib64/glib-2.0/include', '-c', '-o', '/var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.o', '/var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl/tmp-introspectasYSt8/Gegl-0.2.c']' returned non-zero exit status 1 make[3]: *** [Gegl-0.2.gir] Error 1 make[3]: Leaving directory `/var/tmp/portage/media-libs/gegl-0.2.0-r1/work/gegl-0.2.0/gegl' ====================================================
+ 01 May 2013; Sebastian Pipping <sping@gentoo.org> base/package.use.mask: + Unmask ~media-libs/gegl-0.2.0[introspection] (bug #416587) +