Bug 13484 - FTBFS: missing LDFLAGS for src/check-compat/
Summary: FTBFS: missing LDFLAGS for src/check-compat/
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: libtelepathy (show other bugs)
Version: unspecified
Hardware: Other All
: medium blocker
Assignee: Simon McVittie
QA Contact: Telepathy bugs list
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-12-02 00:31 UTC by Diego Escalante Urrelo
Modified: 2007-12-04 10:26 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Diego Escalante Urrelo 2007-12-02 00:31:24 UTC
Honestly I don't know if this is the correct fix, but it allowed me to build:

diff -rN -u old-libtelepathy/src/check-compat/Makefile.am new-libtelepathy/src/check-compat/Makefile.am
--- old-libtelepathy/src/check-compat/Makefile.am       2007-12-02 03:28:56.000000000 -0500
+++ new-libtelepathy/src/check-compat/Makefile.am       2007-12-02 03:28:56.000000000 -0500
@@ -3,6 +3,8 @@
     $(TP_GLIB_CFLAGS) \
     $(WNO_DEPRECATED_DECLARATIONS)
 
+AM_LDFLAGS = $(TP_GLIB_LIBS)
+
 everything_CFLAGS = $(AM_CFLAGS) -Wall -Wextra
 
 noinst_PROGRAMS = \
Comment 1 Simon McVittie 2007-12-03 03:10:58 UTC
I don't know what the right fix is, but that's not it (libraries shouldn't go in LDFLAGS but in LDADD).

What error do you get, what commands do make/libtool end up running, and what platform are you on?

Ideally, please do "make -k -C src/check-compat" to get *all* the output and errors from src/check-compat. If you could attach your src/libtelepathy.la so I can see what libtool thinks it depends on, that'd also be helpful.
Comment 2 Diego Escalante Urrelo 2007-12-03 09:06:35 UTC
Hey,

I'm on Debian Sid, on x86, make -k -C outputs this:

if gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I. -I../..    -I./.. -I.. -I/home/diego/gnome/telepathy/build//include/telepathy-1.0 -I/usr/include/dbus-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/dbus-1.0/include   -Wno-deprecated-declarations -g -MT tp-props-iface.o -MD -MP -MF ".deps/tp-props-iface.Tpo" -c -o tp-props-iface.o tp-props-iface.c; \
        then mv -f ".deps/tp-props-iface.Tpo" ".deps/tp-props-iface.Po"; else rm -f ".deps/tp-props-iface.Tpo"; exit 1; fi
/bin/sh ../../libtool --tag=CC --mode=link gcc -std=gnu99 -I./.. -I.. -I/home/diego/gnome/telepathy/build//include/telepathy-1.0 -I/usr/include/dbus-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/dbus-1.0/include   -Wno-deprecated-declarations -g   -o tp-props-iface  tp-props-iface.o  
gcc -std=gnu99 -I./.. -I.. -I/home/diego/gnome/telepathy/build//include/telepathy-1.0 -I/usr/include/dbus-1.0 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/lib/dbus-1.0/include -Wno-deprecated-declarations -g -o tp-props-iface tp-props-iface.o   
tp-props-iface.o: In function `tp_props_iface_get_properties_async_callback':
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:31: undefined reference to `g_value_get_type'
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:31: undefined reference to `dbus_g_type_get_struct'
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:31: undefined reference to `dbus_g_type_get_collection'
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:31: undefined reference to `dbus_g_proxy_end_call'
tp-props-iface.o: In function `tp_props_iface_list_properties_async_callback':
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:69: undefined reference to `dbus_g_type_get_struct'
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:69: undefined reference to `dbus_g_type_get_collection'
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:69: undefined reference to `dbus_g_proxy_end_call'
tp-props-iface.o: In function `tp_props_iface_set_properties_async_callback':
/home/diego/gnome/telepathy/libtelepathy/src/check-compat/./../tp-props-iface-gen.h:106: undefined reference to `dbus_g_proxy_end_call'
collect2: ld returned 1 exit status
make: *** [tp-props-iface] Error 1
make: Target `all' not remade because of errors.
make: Leaving directory `/home/diego/gnome/telepathy/libtelepathy/src/check-compat'

libtelepathy.la is:
# libtelepathy.la - a libtool library file
# Generated by ltmain.sh - GNU libtool 1.5.24 Debian 1.5.24-1 (1.1220.2.456 2007/06/24 02:25:32)
#
# Please DO NOT delete this file!
# It is necessary for linking the library.

# The name that we can dlopen(3).
dlname='libtelepathy.so.2'

# Names of this library.
library_names='libtelepathy.so.2.6.0 libtelepathy.so.2 libtelepathy.so'

# The name of the static archive.
old_library=''

# Libraries that this one depends upon.
dependency_libs=' -L/home/diego/gnome/telepathy/build//lib /home/diego/gnome/telepathy/build//lib/libtelepathy-glib.la -ldbus-glib-1 -ldbus-1 /usr/lib/libgobject-2.0.la /usr/lib/libglib-2.0.la'

# Version information for libtelepathy.
current=8
age=6
revision=0

# Is this an already installed library?
installed=no

# Should we warn about portability when linking against -modules?
shouldnotlink=no

# Files to dlopen/dlpreopen
dlopen=''
dlpreopen=''

# Directory that this library needs to be installed in:
libdir='/home/diego/gnome/telepathy/build//lib'


don't mind asking for more info.
Comment 3 Simon McVittie 2007-12-04 06:12:06 UTC
Amusingly enough, your FTBFS is because you're compiling without optimizations. As a result, the static functions that call into dbus-glib, but are never called, are not optimized away to nothing, and as a result linking against dbus-glib is needed (linking against telepathy-glib is not required though). I'll fix this in darcs.
Comment 4 Simon McVittie 2007-12-04 10:26:14 UTC
Fixed in Darcs, will be in the next release.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.