Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 156475

Summary: dev-libs/glib and extern inlines w/ gcc-4.3 [patch]
Product: Gentoo Linux Reporter: Kent Fredric (IRC: kent\n) (RETIRED) <kentnl>
Component: [OLD] GCC PortingAssignee: Gentoo Linux Gnome Desktop Team <gnome>
Status: RESOLVED UPSTREAM    
Severity: normal CC: gcc-porting, swegener
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
URL: http://bugzilla.gnome.org/show_bug.cgi?id=315437
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 198121    
Attachments: dev-libs/glib/files/glib-2.12.4-extern-inlines.patch
dev-libs/glib/glib-2.12.4-r1.ebuild
glib-2.14.3-gcc4.3-inline.patch

Description Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2006-11-27 21:54:26 UTC
Im reporting this bug, as I cant seem to prove where it came from. 

compiling net-dns/avahi-0.6.15 with  USE="bookmarks dbus doc gdbm gtk howl-compat mdnsresponder-compat python qt3 qt4 -autoipd -mono" 

Just recompiled glib today with GCC-4.3.0_alpha20061111 ( +doc +fortran +gcj +gtk +mudflap +multislot +nls +objc +objc++ +objc-gc +test ) and glibc-2.5 ( +nls +nptl +nptlonly +profile )

I know were asked to report patches with GCC related bugs, but as I cant tell even if this is gcc's fault or not, im reporting it without one. ( please dont kill me  ) .

Error was:

i686-pc-linux-gnu-gcc -shared  .libs/libavahi_glib_la-glib-watch.o .libs/libavahi_glib_la-glib-malloc.o  -Wl,--rpath -Wl,/tmp/..var/portage/net-dns/avahi-0.6.15/work/avahi-0.6.15/avahi-common/.libs ../avahi-common/.libs/libavahi-common.so /usr/lib/libglib-2.0.so  -march=i686 -mtune=athlon-xp -Wl,-O1 -Wl,-z -Wl,combreloc -Wl,--sort-common -Wl,--enable-new-dtags -Wl,-soname -Wl,libavahi-glib.so.1 -o .libs/libavahi-glib.so.1.0.1
.libs/libavahi_glib_la-glib-malloc.o: In function `g_bit_nth_lsf':
/usr/include/glib-2.0/glib/gutils.h:277: multiple definition of `g_bit_nth_lsf'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:277: first defined here
.libs/libavahi_glib_la-glib-malloc.o: In function `g_bit_nth_msf':
/usr/include/glib-2.0/glib/gutils.h:290: multiple definition of `g_bit_nth_msf'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:290: first defined here
.libs/libavahi_glib_la-glib-malloc.o: In function `g_bit_storage':
/usr/include/glib-2.0/glib/gutils.h:304: multiple definition of `g_bit_storage'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:304: first defined here
.libs/libavahi_glib_la-glib-malloc.o: In function `g_trash_stack_push':
/usr/include/glib-2.0/glib/gutils.h:318: multiple definition of `g_trash_stack_push'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:318: first defined here
.libs/libavahi_glib_la-glib-malloc.o: In function `g_trash_stack_pop':
/usr/include/glib-2.0/glib/gutils.h:326: multiple definition of `g_trash_stack_pop'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:326: first defined here
.libs/libavahi_glib_la-glib-malloc.o: In function `g_trash_stack_peek':
/usr/include/glib-2.0/glib/gutils.h:343: multiple definition of `g_trash_stack_peek'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:343: first defined here
.libs/libavahi_glib_la-glib-malloc.o: In function `g_trash_stack_height':
/usr/include/glib-2.0/glib/gutils.h:352: multiple definition of `g_trash_stack_height'
.libs/libavahi_glib_la-glib-watch.o:/usr/include/glib-2.0/glib/gutils.h:352: first defined here
collect2: ld returned 1 exit status
make[2]: *** [libavahi-glib.la] Error 1
make[2]: Leaving directory `/tmp/..var/portage/net-dns/avahi-0.6.15/work/avahi-0.6.15/avahi-glib'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/..var/portage/net-dns/avahi-0.6.15/work/avahi-0.6.15'
make: *** [all] Error 2

Portage 2.1.2_rc2-r2 (default-linux/x86/2006.1, gcc-4.3.X/default, glibc-2.5-r0, 2.6.18-gentoo-r2kz i686)
=================================================================
System uname: 2.6.18-gentoo-r2kz i686 AMD Athlon(TM) XP 2000+
Gentoo Base System version 1.12.6
Last Sync: Sat, 25 Nov 2006 06:00:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [disabled]
app-admin/eselect-compiler: 2.0.0_rc2-r1
dev-java/java-config: 1.3.7, 2.0.30
dev-lang/python:     2.3.6, 2.4.4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 2.0.0_rc1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r1
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=i686 -mtune=athlon-xp -pipe -ggdb"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/local/kdeextra/share/config /usr/local/kdeextra/shutdown /usr/share/X11/xkb /usr/share/config /var/bind"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/eselect/compiler /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/texmf/web2c"
CXXFLAGS="-O2 -march=i686 -mtune=athlon-xp -pipe -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs autoconfig cvs distlocks metadata-transfer parallel-fetch sandbox sfperms splitdebug strict userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://ftp.swin.edu.au/gentoo http://ftp.jaist.ac.jp/pub/Linux/Gentoo/ http://gentoo.osuosl.org/ http://gentoo.mirrors.tds.net/gentoo http://ftp.ucsb.edu/pub/mirrors/linux/gentoo/ http://gentoo.llarian.net/ http://cudlug.cudenver.edu/gentoo/ http://mirror.isp.net.au/ftp/pub/gentoo/ http://gentoo.chem.wisc.edu/gentoo/"
LANG="C"
LC_ALL="C"
LDFLAGS="-Wl,-O1,-z,combreloc,--sort-common,--enable-new-dtags"
LINGUAS="en_NZ en_GB en en_US"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage /usr/src/gnome/gnome-experimental /usr/src/musicbrainz-overlay_svn /usr/src/xemacs/xemacs /usr/src/xgl/xgl-coffee"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, PORTAGE_RSYNC_EXTRA_OPTS

( note how i have 4.3.X, I've set up a scheme where i have a fake 4.3.X profile which I symlink to the latest 4.3.whatever release { not just the config file, but in each of the /usr/i686-pc-linux-gnu/gcc-bin/* dirs too } , so that programs which decide to depend directly on the full path of GCC's librarys/binaries can be avoided from breaking when the version updates. Also note, /var/tmp -> /tmp/..var/ so they can reside on the same partition, just in case you were confused with my output )
Comment 1 Jakub Moc (RETIRED) gentoo-dev 2006-11-28 01:51:32 UTC
Reopen if you have a patch.
Comment 2 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2006-11-28 08:27:09 UTC
Created attachment 102923 [details, diff]
dev-libs/glib/files/glib-2.12.4-extern-inlines.patch

Fixed the sucker :)  GCC4.3 extern inlines crap in glib

Avahi now compiles against GLIB :)
Comment 3 Jakub Moc (RETIRED) gentoo-dev 2006-11-28 08:29:55 UTC
OK, reopening...
Comment 4 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2006-11-28 08:30:27 UTC
Created attachment 102924 [details]
dev-libs/glib/glib-2.12.4-r1.ebuild

and the ebuild that uses it, with utilization of the aformentioned patch
Comment 5 Luis Medinas (RETIRED) gentoo-dev 2006-12-16 14:28:20 UTC
gcc 4.3 isn't supported and it's on alpha stage right now. So you should wait a bit until it goes to an usuable stage or submit the patches upstream.
Comment 6 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2007-06-13 11:56:55 UTC
Just adding a reference URL to the upstream bug report for tracking purposes, seeing there looks like a little activity is picking up there.

I'll try to keep you notified as to when there is an -official- solution for this.

Im not all familiar with all of the bug track features, but think the right thing to do here is mark as UPSTREAM so am doing so.

I need to re-test 2.2.12 tho and see if that works.
Comment 7 Ryan Hill (RETIRED) gentoo-dev 2007-11-20 01:41:24 UTC
Created attachment 136465 [details, diff]
glib-2.14.3-gcc4.3-inline.patch

this is the current version of the patch.  it hasn't been applied yet upstream due to OSX issues.  i won't reopen this bug, but i am adding it to the gcc-4.3 tracker.
Comment 8 Ryan Hill (RETIRED) gentoo-dev 2007-11-20 01:42:28 UTC
er, or i would if it wasn't already ;)
Comment 9 Ryan Hill (RETIRED) gentoo-dev 2008-01-11 02:02:38 UTC
fixed in 2.14.5.