When libxfcegui4-4.10.0 (which is same as git currently) is built against libxfce4ui-4.11.0 (or git) using CFLAGS="-Wimplicit-function-declaration" you see this: libxfcegui4-4.10.0/libxfcegui4/xfce-exec.c:82:5: warning: implicit declaration of function 'xfce_setenv' [-Wimplicit-function-declaration] And then, if you try to compile something against that newly built libxfcegui4, using ld.bfd (the default linker of binutils) using LDFLAGS="-Wl,--as-needed" as added by some of Xfce's configure.ac's and distribution build scripts. Let's take xfce4-wmdock-plugin-0.6.0 for example: <quote> libtool: link: x86_64-pc-linux-gnu-gcc -Wall -I.. -pthread -I/usr/include/xfce4 -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/xfce4/libxfce4panel-1.0 -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/xfce4 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -pthread -I/usr/include/libwnck-1.0 -I/usr/include/startup-notification-1.0 -I/usr/include/gtk-2.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pango-1.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/libpng16 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/freetype2 -DGETTEXT_PACKAGE=\"xfce4-wmdock-plugin\" -DPACKAGE_LOCALE_DIR=\"/usr/share/locale\" -O2 -pipe -march=native -frecord-gcc-switches -Wimplicit-function-declaration -Wl,-fuse-ld=bfd -o xfce4-wmdock-plugin xfce4_wmdock_plugin-catchwindow.o xfce4_wmdock_plugin-debug.o xfce4_wmdock_plugin-dnd.o xfce4_wmdock_plugin-dockapp.o xfce4_wmdock_plugin-misc.o xfce4_wmdock_plugin-props.o xfce4_wmdock_plugin-rcfile.o xfce4_wmdock_plugin-wmdock.o -Wl,--export-dynamic -pthread -Wl,--as-needed -lxfce4panel-1.0 -lgmodule-2.0 -lwnck-1 -lxfcegui4 -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0 -lpango-1.0 -lgobject-2.0 -lfontconfig -lfreetype -lxfce4util -lglib-2.0 -lX11 -lm -pthread /usr/lib/gcc/x86_64-pc-linux-gnu/4.8.2/../../../../lib64/libxfcegui4.so: undefined reference to `xfce_setenv' collect2: error: ld returned 1 exit status </quote> The compilation is aborted because: # nm -D /usr/lib/libxfcegui4.so.4.3.0 |grep setenv U xfce_setenv "U" as in undefined! So it seems libxfcegui4 git should be fixed for libxfce4util git. I know libxfcegui4 is a dead library, but we still have dozen or more plugins that are unported. In Gentoo, all of these are at their latest version, and still use libxfcegui4: http://qa-reports.gentoo.org/output/genrdeps/rindex/xfce-base/libxfcegui4 xfce-extra/xfce4-cellmodem-plugin-0.0.5 xfce-extra/xfce4-dict-0.6.0 xfce-extra/xfce4-gvfs-mount-0.0.4 xfce-extra/xfce4-linelight-plugin-0.1.7 xfce-extra/xfce4-messenger-plugin-0.1.0 xfce-extra/xfce4-modemlights-plugin-0.1.3.99 xfce-extra/xfce4-notes-plugin-1.7.7 xfce-extra/xfce4-playercontrol-plugin-0.3.0 xfce-extra/xfce4-quicklauncher-plugin-1.9.4-r1 xfce-extra/xfce4-radio-plugin-0.5.1 xfce-extra/xfce4-verve-plugin-1.0.0 xfce-extra/xfce4-wmdock-plugin-0.6.0 xfce-extra/xfswitch-plugin-0.0.1-r1 So, would it be possible to get libxfcegui4 fixed in git? I don't care if it's released or not, but distributions will be asking for it... Gentoo is at pretty good situation wrt porting from gui4 to 4ui, some other distributions have double that many unported ones Thanks!
(In reply to Samuli Suominen from comment #0) > When libxfcegui4-4.10.0 (which is same as git currently) is built against > libxfce4ui-4.11.0 Typing error here. I meant libxfce4util, of course.
Perhaps the xfce_setenv that used to be in libxfce4util, should now be moved to libxfcegui4 for compability reasons?
These bugs were filed because of this: https://bugs.gentoo.org/show_bug.cgi?id=514330 https://bugs.gentoo.org/show_bug.cgi?id=514520 https://bugs.gentoo.org/show_bug.cgi?id=514868 https://bugs.gentoo.org/show_bug.cgi?id=513568 They contain complete build.logs of failing xfswitch-plugin, xfce4-gvfs-mount, xfce4-wmdock-plugin, if you need them. Otherwise they don't have more info than what I have said here already.
And sorry for using the libxfce4util bugzilla component. Looks like the libxfcegui4 component has been removed already.
Turns out it simple as this: --- libxfcegui4/xfce-exec.c +++ libxfcegui4/xfce-exec.c @@ -79,7 +79,7 @@ #ifndef G_OS_WIN32 gchar *dpyname = user_data; - xfce_setenv ("DISPLAY", dpyname, TRUE); + g_setenv ("DISPLAY", dpyname, TRUE); #endif } Please review & commit to git
Created attachment 5532 Fix compability with libxfce4util-4.11+
libxfcegui4 has been deprecated since 4.8 and was moved to the repository archive ages ago. If you want or need to continue supporting it, you'll have to ship the patch in your distro. We're no longer pushing changes to libxfcegui4, sorry.