Bug#93226: Optimisation bug when building gnome-pim 1.4.0 with -O2
On Sat, Apr 07, 2001 at 12:33:45PM -0400, Joe Drew wrote:
> Package: gcc-2.95
> Version: 1:2.95.3-10
> Severity: normal
>
> When building gnome-pim, I ran into a strange problem:
>
> gcc -shared GnomeCal-common.lo GnomeCal-stubs.lo calendar-conduit.lo calobj.lo alarm.lo calendar.lo timeutil.lo -Wl,--whole-archive ../libversit/.libs/libversit.al -Wl,--no-whole-archive -lpisock -L/usr/lib -L/usr/X11R6/lib -lgnome -lgnomesupport -lesd -laudiofile -lm -ldb -lglib -ldl -lc -Wl,-soname -Wl,libcalendar_conduit.so.0 -o .libs/libcalendar_conduit.so.0.0.0
> alarm.lo: In function `g_bit_nth_lsf':
> /home/hosehead/src/gnome-pim/gnome-pim-1.4.0/gncal/alarm.c(.text+0x0): multiple definition of `g_bit_nth_lsf'
> calobj.lo(.text+0x0):/home/hosehead/src/gnome-pim/gnome-pim-1.4.0/gncal/calobj.c: first defined here
> alarm.lo: In function `g_bit_nth_msf':
> /usr/include/glib-1.2/glib.h(.text+0x2c): multiple definition of `g_bit_nth_msf'calobj.lo(.text+0x2c):/usr/include/glib-1.2/glib.h: first defined here
> alarm.lo: In function `g_bit_storage':
> /usr/include/glib-1.2/glib.h(.text+0x60): multiple definition of `g_bit_storage'calobj.lo(.text+0x60):/usr/include/glib-1.2/glib.h: first defined here
> collect2: ld returned 1 exit status
>
> (Very confusing to say the least) - I rebuilt with CFLAGS="-O0" and it
> did build properly.
> What sort of files can I supply so that this can be debugged?
Almost certainly not a gcc error. What and where is the definition of
g_bit_nth_msf? It seems to be in glib-1.2/glib.h. Regard:
/* Bit tests
*/
G_INLINE_FUNC gint g_bit_nth_lsf (guint32 mask,
gint nth_bit);
#ifdef G_CAN_INLINE
G_INLINE_FUNC gint
g_bit_nth_lsf (guint32 mask,
gint nth_bit)
...
#endif
I suspect that configure is deciding that at -O2 you can inline, but
not setting G_INLINE_FUNC to 'inline', or something like that.
--
Daniel Jacobowitz Debian GNU/Linux Developer
Monta Vista Software Debian Security Team
"I am croutons!"
Reply to: