Building XFCE on Cygwin
Maarten Boekhold
boekhold at emirates.net.ae
Fri Jul 9 13:57:51 CEST 2004
Maarten Boekhold wrote:
>
> Brian J. Tarricone wrote:
>
>> i spent some time trying to build xfce4 cvs under cygwin. i got most
>> of the base pacakges built, but i can't get any .dlls to build. i
>> tried adding -no-undefined, but that just spewed out a list of unresolved
I did some more building, and I now have at least the following
correctly built, with minimal changes:
libxfce4util - OK - libxfce4util/Makefile.am
libxfcegui4 - OK - libxfcegui4/Makefile.am
libxfce4mcs - OK - libxfce4mcs/Makefile.am (2 places)
xfce-mcs-manager - OK - xfce-mcs-manager/Makefile.am
gtk-xfce-engine-2 - OK - src/Makefile.am
xfce4-appfinder - OK - None
But you're right about many shared libraries. For some of them the
problem might be that they reference symbols in the panel binary
(mcs-manager as well?). However, it seems to me that many libraries just
fail to build because they are not linked explicitly against the
glib/gtk libraries!
For example, libxfce4util has the following in libxfce4util/Makefile.am:
libxfce4util_la_LIBADD = \
@GOBJECT_LIBS@
libxfce4util_la_CFLAGS = \
-I$(top_srcdir) \
@GOBJECT_CFLAGS@
This causes the library to be explicitly linked against the gobject
library, which satisfies the link requirements of cygwin. However,
xfce4-session/settings/Makefile.am doesn't have a LIBADD, and doesn't
have any additional CFLAGS for glib/gtk, which causes its building to
fail spectacularly with loads of missing _g_../_gdk_... etc symbols.
I tried adding a LIBADD section to xfce4-session/settings/Makefile.am,
but either I don't know which automake vars I can use there, or the
required autoconf support that defines those vars is not present.
Brian, do you know what needs to be added to the various _la_LIBADD and
_la_CFLAGS sections?
btw. Regarding adding -no-undefined everywhere, originally I was
planning to add this only to the _la_LDFLAGS when we are on cygwin. But
one of the cygwin developers told me that this flag doesn't hurt on
other platforms at all, so we could easily just add it everywhere. How
do the XFCE developers feel about this?
Maarten
More information about the Xfce4-dev
mailing list