GNOME Bugzilla – Bug 557311
Gtk with directfb backend fails compiling
Last modified: 2014-01-06 07:13:16 UTC
Please describe the problem: Hi, I'm having troubles for compiling the latest version of gtk with the directfb backend. It fails at link time. Here is what I have: directfb/.libs/libgdk-directfb.a(gdkgeometry-directfb.o): In function `IA__gdk_window_move_region': gdkgeometry-directfb.c:(.text+0x30): multiple definition of `IA__gdk_window_move_region' .libs/gdkwindow.o:gdkwindow.c:(.text+0x19d0): first defined here directfb/.libs/libgdk-directfb.a(gdkgeometry-directfb.o): In function `IA__gdk_window_scroll': gdkgeometry-directfb.c:(.text+0x310): multiple definition of `IA__gdk_window_scroll' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1a90): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_shape_combine_mask': gdkwindow-directfb.c:(.text+0x70): multiple definition of `IA__gdk_window_shape_combine_mask' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1590): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_shape_combine_region': gdkwindow-directfb.c:(.text+0x90): multiple definition of `IA__gdk_window_shape_combine_region' .libs/gdkwindow.o:gdkwindow.c:(.text+0x14f0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_set_child_shapes': gdkwindow-directfb.c:(.text+0xb0): multiple definition of `IA__gdk_window_set_child_shapes' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1460): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_merge_child_shapes': gdkwindow-directfb.c:(.text+0xc0): multiple definition of `IA__gdk_window_merge_child_shapes' .libs/gdkwindow.o:gdkwindow.c:(.text+0x13d0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_set_events': gdkwindow-directfb.c:(.text+0xb30): multiple definition of `IA__gdk_window_set_events' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1e20): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_get_events': gdkwindow-directfb.c:(.text+0xbd0): multiple definition of `IA__gdk_window_get_events' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1d80): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_get_origin': gdkwindow-directfb.c:(.text+0xd20): multiple definition of `IA__gdk_window_get_origin' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1630): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_get_geometry': gdkwindow-directfb.c:(.text+0xe90): multiple definition of `IA__gdk_window_get_geometry' .libs/gdkwindow.o:gdkwindow.c:(.text+0x16d0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_set_static_gravities': gdkwindow-directfb.c:(.text+0x17a0): multiple definition of `IA__gdk_window_set_static_gravities' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1330): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_set_back_pixmap': gdkwindow-directfb.c:(.text+0x1f20): multiple definition of `IA__gdk_window_set_back_pixmap' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1850): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_set_background': gdkwindow-directfb.c:(.text+0x2010): multiple definition of `IA__gdk_window_set_background' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1930): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_raise': gdkwindow-directfb.c:(.text+0x2250): multiple definition of `IA__gdk_window_raise' .libs/gdkwindow.o:gdkwindow.c:(.text+0x20d0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_lower': gdkwindow-directfb.c:(.text+0x2330): multiple definition of `IA__gdk_window_lower' .libs/gdkwindow.o:gdkwindow.c:(.text+0x2000): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_set_cursor': gdkwindow-directfb.c:(.text+0x3520): multiple definition of `IA__gdk_window_set_cursor' .libs/gdkwindow.o:gdkwindow.c:(.text+0x17b0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_move': gdkwindow-directfb.c:(.text+0x3830): multiple definition of `IA__gdk_window_move' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1cc0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_move_resize': gdkwindow-directfb.c:(.text+0x39b0): multiple definition of `IA__gdk_window_move_resize' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1b40): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_resize': gdkwindow-directfb.c:(.text+0x3c30): multiple definition of `IA__gdk_window_resize' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1c00): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_hide': gdkwindow-directfb.c:(.text+0x3d10): multiple definition of `IA__gdk_window_hide' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1f60): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_withdraw': gdkwindow-directfb.c:(.text+0x3f20): multiple definition of `IA__gdk_window_withdraw' .libs/gdkwindow.o:gdkwindow.c:(.text+0x1ec0): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_show': gdkwindow-directfb.c:(.text+0x40e0): multiple definition of `IA__gdk_window_show' .libs/gdkwindow.o:gdkwindow.c:(.text+0x6a40): first defined here directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function `IA__gdk_window_show_unraised': gdkwindow-directfb.c:(.text+0x4200): multiple definition of `IA__gdk_window_show_unraised' .libs/gdkwindow.o:gdkwindow.c:(.text+0x21a0): first defined here collect2: ld returned 1 exit status make[4]: *** [libgdk-directfb-2.0.la] Erreur 1 make[4]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4/gdk » make[3]: *** [all-recursive] Erreur 1 make[3]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4/gdk » make[2]: *** [all] Erreur 2 make[2]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4/gdk » make[1]: *** [all-recursive] Erreur 1 make[1]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4 » make: *** [all] Erreur 2 ==> ERREUR: La compilation a échoué. Steps to reproduce: 1. try to compile gtk with directfb backend 2. 3. Actual results: fails at link time Expected results: compile successfuly Does this happen every time? yes Other information: Here are infos about my system: Glib: 2.18.0 Cairo: 1.8.0 (compiled with directfb backend) pango: 1.20.5 Directfb: 1.2.6 Also how I try to compile gtk: #These lines allows me to have both X11 and directfb version of gtk working on my system export PREFIX=/opt/gtkdfb export LD_LIBRARY_PATH=$PREFIX/lib export PKG_CONFIG_PATH=$LD_LIBRARY_PATH/pkgconfig ./configure --prefix=$PREFIX --with-gdktarget=directfb --without-x make
I get the same problem with 2.14.4. Furthermore I have tried several previous versions. The LATEST version I could get to compile with the directfb backend was 2.13.0. After that, the directfb backend seems to be broken. Is anyone working on directfb anymore, or is it now defunct? (In reply to comment #0) > Please describe the problem: > Hi, > I'm having troubles for compiling the latest version of gtk with the directfb > backend. It fails at link time. Here is what I have: > > directfb/.libs/libgdk-directfb.a(gdkgeometry-directfb.o): In function > `IA__gdk_window_move_region': > gdkgeometry-directfb.c:(.text+0x30): multiple definition of > `IA__gdk_window_move_region' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x19d0): first defined here > directfb/.libs/libgdk-directfb.a(gdkgeometry-directfb.o): In function > `IA__gdk_window_scroll': > gdkgeometry-directfb.c:(.text+0x310): multiple definition of > `IA__gdk_window_scroll' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1a90): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_shape_combine_mask': > gdkwindow-directfb.c:(.text+0x70): multiple definition of > `IA__gdk_window_shape_combine_mask' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1590): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_shape_combine_region': > gdkwindow-directfb.c:(.text+0x90): multiple definition of > `IA__gdk_window_shape_combine_region' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x14f0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_set_child_shapes': > gdkwindow-directfb.c:(.text+0xb0): multiple definition of > `IA__gdk_window_set_child_shapes' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1460): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_merge_child_shapes': > gdkwindow-directfb.c:(.text+0xc0): multiple definition of > `IA__gdk_window_merge_child_shapes' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x13d0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_set_events': > gdkwindow-directfb.c:(.text+0xb30): multiple definition of > `IA__gdk_window_set_events' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1e20): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_get_events': > gdkwindow-directfb.c:(.text+0xbd0): multiple definition of > `IA__gdk_window_get_events' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1d80): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_get_origin': > gdkwindow-directfb.c:(.text+0xd20): multiple definition of > `IA__gdk_window_get_origin' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1630): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_get_geometry': > gdkwindow-directfb.c:(.text+0xe90): multiple definition of > `IA__gdk_window_get_geometry' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x16d0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_set_static_gravities': > gdkwindow-directfb.c:(.text+0x17a0): multiple definition of > `IA__gdk_window_set_static_gravities' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1330): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_set_back_pixmap': > gdkwindow-directfb.c:(.text+0x1f20): multiple definition of > `IA__gdk_window_set_back_pixmap' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1850): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_set_background': > gdkwindow-directfb.c:(.text+0x2010): multiple definition of > `IA__gdk_window_set_background' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1930): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_raise': > gdkwindow-directfb.c:(.text+0x2250): multiple definition of > `IA__gdk_window_raise' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x20d0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_lower': > gdkwindow-directfb.c:(.text+0x2330): multiple definition of > `IA__gdk_window_lower' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x2000): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_set_cursor': > gdkwindow-directfb.c:(.text+0x3520): multiple definition of > `IA__gdk_window_set_cursor' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x17b0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_move': > gdkwindow-directfb.c:(.text+0x3830): multiple definition of > `IA__gdk_window_move' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1cc0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_move_resize': > gdkwindow-directfb.c:(.text+0x39b0): multiple definition of > `IA__gdk_window_move_resize' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1b40): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_resize': > gdkwindow-directfb.c:(.text+0x3c30): multiple definition of > `IA__gdk_window_resize' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1c00): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_hide': > gdkwindow-directfb.c:(.text+0x3d10): multiple definition of > `IA__gdk_window_hide' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1f60): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_withdraw': > gdkwindow-directfb.c:(.text+0x3f20): multiple definition of > `IA__gdk_window_withdraw' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x1ec0): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_show': > gdkwindow-directfb.c:(.text+0x40e0): multiple definition of > `IA__gdk_window_show' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x6a40): first defined here > directfb/.libs/libgdk-directfb.a(gdkwindow-directfb.o): In function > `IA__gdk_window_show_unraised': > gdkwindow-directfb.c:(.text+0x4200): multiple definition of > `IA__gdk_window_show_unraised' > .libs/gdkwindow.o:gdkwindow.c:(.text+0x21a0): first defined here > collect2: ld returned 1 exit status > make[4]: *** [libgdk-directfb-2.0.la] Erreur 1 > make[4]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4/gdk » > make[3]: *** [all-recursive] Erreur 1 > make[3]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4/gdk » > make[2]: *** [all] Erreur 2 > make[2]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4/gdk » > make[1]: *** [all-recursive] Erreur 1 > make[1]: quittant le répertoire « /opt/AUR/gtk2-dfb/src/gtk+-2.14.4 » > make: *** [all] Erreur 2 > ==> ERREUR: La compilation a échoué. > > > > Steps to reproduce: > 1. try to compile gtk with directfb backend > 2. > 3. > > > Actual results: > fails at link time > > Expected results: > compile successfuly > > Does this happen every time? > yes > > Other information: > Here are infos about my system: > Glib: 2.18.0 > Cairo: 1.8.0 (compiled with directfb backend) > pango: 1.20.5 > Directfb: 1.2.6 > > Also how I try to compile gtk: > #These lines allows me to have both X11 and directfb version of gtk working on > my system > export PREFIX=/opt/gtkdfb > export LD_LIBRARY_PATH=$PREFIX/lib > export PKG_CONFIG_PATH=$LD_LIBRARY_PATH/pkgconfig > > ./configure --prefix=$PREFIX --with-gdktarget=directfb --without-x > make >
I sent this to "directfb-dev" <directfb-dev@directfb.org>, Your best bet is to join this list and see if anyone is willing to fix this. I'm not currently working on it.
OK, I had a look, it seems that some functions have moved from the [backend]/gdkwindow-[backend].c file to the gdkwindow.c file. I'll see if I can fix this.
this is a duplicate of bug 554407. (In reply to comment #3) > OK, I had a look, it seems that some functions have moved from the > [backend]/gdkwindow-[backend].c file to the gdkwindow.c file. > I'll see if I can fix this. functions were not moved: the GdkWindow API has been reimplemented in terms of proxying requests to a GdkWindowImpl interface implemented by each backend. see bug 554407 for a reference on what changed. *** This bug has been marked as a duplicate of 554407 ***
Hi This is hemanth i got the same error .... what is the solution for this any changing lines in gdkwindow.c.. or adding any extra packages while building Waiting for replay Thanks and regards Hemanth