[Spice-devel] [client] spicy: Spicy uses GTK+ and must link with it

Victor Toso lists at victortoso.com
Mon Feb 27 08:25:35 UTC 2017


Hi,

On Mon, Feb 27, 2017 at 09:19:15AM +0100, Christophe Fergeau wrote:
> On Fri, Feb 24, 2017 at 12:23:23PM +0100, Francois Gouget wrote:
> > This avoids having the linker complain that gtk_toggle_action_get_type()
> > or some other GTK+ API is undefined.
>
> This kind of issues are indeed seen on some distros, and not others.
> I believe this is what is described on
> https://wiki.mageia.org/en/Underlinking_issues_in_packaging

Ah, thanks for the link above.

>
> spicy directly uses symbols from gtk+, so it should explicitly link
> with it. This wiki page says this should be reproducible using
> -Wl,--as-needed, but this did not make a difference for me as -lgtk-3
> is listed in libspice-client-gtk-3.0.la, and libtool uses this when
> linking spicy.

Here as well.

> However, spicy-stats uses glib/gobject, and does not explicitly link
> with it either, I would have expected something like the patch below, but
> this can actually be done on top of your patch.
>
> Acked-by: Christophe Fergeau <cfergeau at redhat.com>
> even though I would have liked to be able to reproduce the issue :-/

Me too. :(

        toso
>
> 
> diff --git a/tools/Makefile.am b/tools/Makefile.am
> index 0bdb3c5..0b3df78 100644
> --- a/tools/Makefile.am
> +++ b/tools/Makefile.am
> @@ -12,6 +12,12 @@ TOOLS_CPPFLAGS =                     \
>         $(SPICE_CFLAGS)                 \
>         $(NULL)
> 
> +TOOLS_LIBS =                           \
> +       $(GLIB2_LIBS)                   \
> +       $(GOBJECT2_LIBS)                \
> +       $(top_builddir)/src/libspice-client-glib-2.0.la \
> +       $(NULL)
> +
>  if WITH_GTK
>  bin_PROGRAMS += spicy
>  TOOLS_CPPFLAGS += $(GTK_CFLAGS)
> @@ -26,8 +32,9 @@ spicy_SOURCES =                               \
>         $(NULL)
> 
>  spicy_LDADD =                          \
> +       $(TOOLS_LIBS)                   \
> +       $(GTK_LIBS)                     \
>         $(top_builddir)/src/libspice-client-gtk-3.0.la  \
> -       $(top_builddir)/src/libspice-client-glib-2.0.la \
>         $(NULL)
> 
>  # FIXME: GtkAction and lots of GtkUIManager APIs are deprecated
> @@ -44,8 +51,7 @@ spicy_screenshot_SOURCES =            \
>         $(NULL)
> 
>  spicy_screenshot_LDADD =               \
> -       $(top_builddir)/src/libspice-client-glib-2.0.la \
> -       $(GOBJECT2_LIBS)                \
> +       $(TOOLS_LIBS)                   \
>         $(NULL)
> 
>  spicy_screenshot_CPPFLAGS =            \
> @@ -59,7 +65,7 @@ spicy_stats_SOURCES =                 \
>         $(NULL)
> 
>  spicy_stats_LDADD =                    \
> -       $(top_builddir)/src/libspice-client-glib-2.0.la \
> +       $(TOOLS_LIBS)                   \
>         $(NULL)
> 
>  spicy_stats_CPPFLAGS =                 \
> 
> 
> Christophe
> 
> 
> > 
> > Signed-off-by: Francois Gouget <fgouget at codeweavers.com>
> > ---
> >  tools/Makefile.am | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/tools/Makefile.am b/tools/Makefile.am
> > index 0bdb3c54..e41e0ab5 100644
> > --- a/tools/Makefile.am
> > +++ b/tools/Makefile.am
> > @@ -28,6 +28,7 @@ spicy_SOURCES =				\
> >  spicy_LDADD =				\
> >  	$(top_builddir)/src/libspice-client-gtk-3.0.la	\
> >  	$(top_builddir)/src/libspice-client-glib-2.0.la	\
> > +	$(GTK_LIBS) \
> >  	$(NULL)
> >  
> >  # FIXME: GtkAction and lots of GtkUIManager APIs are deprecated
> > -- 
> > 2.11.0
> > 
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/spice-devel



> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/spice-devel/attachments/20170227/9ae2717d/attachment-0001.sig>


More information about the Spice-devel mailing list