GNOME Bugzilla – Bug 143185
error in line.h
Last modified: 2004-12-22 21:47:04 UTC
./configure && make g++ -DHAVE_CONFIG_H -DG_LOG_DOMAIN=\"libgnomecanvasmm\" -I../../libgnomecanvas -I../../libgnomecanvas -I/opt/gnome/include/gtkmm-2.0 -I/opt/gnome/lib/gtkmm-2.0/include -I/opt/gnome/include/gtk-2.0 -I/opt/gnome/lib/sigc++-1.2/include -I/opt/gnome/include/sigc++-1.2 -I/opt/gnome/include/glib-2.0 -I/opt/gnome/lib/glib-2.0/include -I/opt/gnome/lib/gtk-2.0/include -I/opt/gnome/include/pango-1.0 -I/opt/gnome/include -I/usr/include/freetype2 -I/usr/X11R6/include -I/opt/gnome/include/atk-1.0 -I/opt/gnome/include/libgnomecanvas-2.0 -I/opt/gnome/include/libart-2.0 -O3 -march=athlon-xp -MT line.lo -MD -MP -MF .deps/line.Tpo -c line.cc -fPIC -DPIC -o .libs/line.o In file included from line.cc:3: ../../libgnomecanvas/libgnomecanvasmm/line.h:289: error: extra qualification ignored ../../libgnomecanvas/libgnomecanvasmm/line.h:290: error: explicit specialization of non-template `Glib::<anonymous class>' ../../libgnomecanvas/libgnomecanvasmm/line.h:290: error: an anonymous union cannot have function members ../../libgnomecanvas/libgnomecanvasmm/line.h:293: error: abstract declarator `Glib::<anonymous class>' used as declaration ../../libgnomecanvas/libgnomecanvasmm/line.h:293: error: namespace-scope anonymous aggregates must be static make[4]: *** [line.lo] Error 1 gcc version 3.4.0 20040416 (prerelease)
Thanks. What version of libgnomecanvasmm is this? What compiler/platform are you using?
it was LFS 5.1 with compiler: gcc version 3.4.0 20040416 (prerelease) i tried both versions of libgnomecanvasmm (2.6.0 and 2.6.1) i guess this is a gcc 3.4 incompatiblity. because of system switching (back to debian) i cannot provide more information
I'm not using gcc 3.4 fulltime yet. I guess a patch would be easy to make: http://www.gtkmm.org/bugs.shtml#CreatingPatches
Created attachment 29368 [details] [review] 2.0.1-gcc3.4.1.patch gcc 3.4.1, existing gcc 3.4 patch already applied. Compiles OK but not tested yet.
1. You are patching a generated files. Please see this page for help with making patches: http://www.gtkmm.org/bugs.shtml#CreatingPatches Also, please patch the ChangeLog. 2. You seem to be patching libgnomecanvasmm 2.0, and the first comment here seems to be an error in libgnomecanvasmm 2.0, but then Christian mentions that he tried 2.6 versions. What branch really has this problem?
Created attachment 29373 [details] [review] 2.0.1-gcc3.4.patch Sorry. This is the correct patch. I don't use libgnomecanvasmm 2.6 but I imagine a similar change will be needed if it hasn't already been fixed. I'll look at it when I have time.
libgnomecanvasmm 2.6.1 compiles fine without any changes needed on my machine (using gcc 3.4.1). As the original report was about libgnomecanvasmm 2.0 and the patch I posted fixes that branch this bug can probably be closed.
Is this a cvs diff?. When I try to apply it I get: murrayc@murrayc_debian:~/cvs/gnome24/gnomemm/libgnomecanvasmm$ patch -p0 < /home/murrayc/canvasgcc.patch patching file libgnomecanvas/src/line.hg Reversed (or previously applied) patch detected! Assume -R? [n]
No, it's an rcs diff against the most recent tarball (2.0.1) on the 2.0 branch - http://ftp.acc.umu.se/pub/GNOME/sources/libgnomecanvasmm/2.0/libgnomecanvasmm-2.0.1.tar.bz2 Sorry, most of the stuff I write patches for is the HEAD or close to, I'm not even sure I remember how to create a cvs diff against a branch... I'll go and do that now. I assume libgnomecanvasmm-2.0.1 is from the branch called gnome-2.4?
Created attachment 29450 [details] [review] patch to examples/canvas_events/canvas_events.cc OK, this is a proper CVS patch against the gnome-2-4 branch for libgnomecanvasmm-2.0-*. line.hg was already fixed on the gnome-2-4 branch, so this just fixes examples/canvas_events/canvas_events.cc However the most recent tarball (libgnomecanvasmm-2.0.1.tar.bz2) from the gnome-2-4 branch does not have line.hg fixed, so perhaps you might want to release a new tarball?
Yes. See the link above for help with creating patches. All the cvs branches are listed on the cvs page.
Applied to the gnome-2-4 branch. Thanks. I'm trying to do a new release too.