Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 240612 - media-libs/ladcca-0.4.0-r1 - hints.c:(.text+0x0): multiple definition of `g_bit_nth_lsf'
Summary: media-libs/ladcca-0.4.0-r1 - hints.c:(.text+0x0): multiple definition of `g_b...
Status: RESOLVED TEST-REQUEST
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo Sound Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-10-08 22:59 UTC by Dave
Modified: 2009-05-11 10:50 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,54.12 KB, text/plain)
2008-10-08 23:00 UTC, Dave
Details
emerge --info (info,17.38 KB, text/plain)
2008-10-08 23:00 UTC, Dave
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dave 2008-10-08 22:59:52 UTC
creating ladcca_save_button_2
source='save_button.c' object='ladcca_save_button-save_button.o' libtool=no \
        depfile='.deps/ladcca_save_button-save_button.Po' tmpdepfile='.deps/ladcca_save_button-save_button.TPo' \
        depmode=gcc3 /bin/sh ../../depcomp \
        i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -std=gnu99   -DLADCCA_BUILD -DHAVE_LADCCA -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -march=pentium4 -O2 -fomit-frame-pointer -pipe -c -o ladcca_save_button-save_button.o `test -f 'save_button.c' || echo './'`save_button.c
source='hints.c' object='ladcca_save_button-hints.o' libtool=no \
        depfile='.deps/ladcca_save_button-hints.Po' tmpdepfile='.deps/ladcca_save_button-hints.TPo' \
        depmode=gcc3 /bin/sh ../../depcomp \
        i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -std=gnu99   -DLADCCA_BUILD -DHAVE_LADCCA -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include -march=pentium4 -O2 -fomit-frame-pointer -pipe -c -o ladcca_save_button-hints.o `test -f 'hints.c' || echo './'`hints.c
/bin/sh ../../libtool --mode=link i686-pc-linux-gnu-gcc  -march=pentium4 -O2 -fomit-frame-pointer -pipe  -Wl,-O1 -o ladcca_save_button  ladcca_save_button-save_button.o ladcca_save_button-hints.o ../../libladcca/libladcca.la -L/usr/lib -lgtk -lgdk -rdynamic -lgmodule -lglib -lXi -lXext -lXext -lX11 -lm
i686-pc-linux-gnu-gcc -march=pentium4 -O2 -fomit-frame-pointer -pipe -Wl,-O1 -o .libs/ladcca_save_button ladcca_save_button-save_button.o ladcca_save_button-hints.o -rdynamic  ../../libladcca/.libs/libladcca.so -luuid -lpthread -L/usr/lib /usr/lib/libgtk.so /usr/lib/libgdk.so /usr/lib/libgmodule.so /usr/lib/libglib.so /usr/lib/libXi.so /usr/lib/libXext.so /usr/lib/libX11.so /usr/lib/libxcb-xlib.so /usr/lib/libxcb.so /usr/lib/libXau.so /usr/lib/libXdmcp.so -ldl -lm
ladcca_save_button-hints.o: In function `g_bit_nth_lsf':
hints.c:(.text+0x0): multiple definition of `g_bit_nth_lsf'
ladcca_save_button-save_button.o:save_button.c:(.text+0x0): first defined here
ladcca_save_button-hints.o: In function `g_bit_nth_msf':
hints.c:(.text+0x27): multiple definition of `g_bit_nth_msf'
ladcca_save_button-save_button.o:save_button.c:(.text+0x27): first defined here
ladcca_save_button-hints.o: In function `g_bit_storage':
hints.c:(.text+0x57): multiple definition of `g_bit_storage'
ladcca_save_button-save_button.o:save_button.c:(.text+0x57): first defined here
collect2: ld returned 1 exit status
make[3]: *** [ladcca_save_button] Error 1
make[3]: Leaving directory `/var/tmp/portage/media-libs/ladcca-0.4.0-r1/work/ladcca-0.4.0/clients/save_button'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/media-libs/ladcca-0.4.0-r1/work/ladcca-0.4.0/clients'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-libs/ladcca-0.4.0-r1/work/ladcca-0.4.0'
make: *** [all] Error 2
 *
 * ERROR: media-libs/ladcca-0.4.0-r1 failed.
 * Call stack:
 * ebuild.sh, line   49:  Called src_compile
 * environment, line 2071:  Called die
 * The specific snippet of code:
 * emake || die
 * The die message:
 * (no error message)
Comment 1 Dave 2008-10-08 23:00:30 UTC
Created attachment 167666 [details]
build.log
Comment 2 Dave 2008-10-08 23:00:56 UTC
Created attachment 167668 [details]
emerge --info
Comment 3 Allan Bjorklund 2008-12-28 01:24:09 UTC
Newer versions of gcc (post 4.3, I believe, I'm not sure of the exact version number) changed the way they treat inline functions, and that is the cause of the multiple definitions error.

Until the code is fixed to take into account the newer inline compilation, you can add -fgnu89_inline to the CFLAGS for this package to have gcc compile the inline functions the old way.
Comment 4 Dominique Michel 2009-05-09 15:56:35 UTC
I get a similar issue:

	depmode=gcc3 /bin/sh ../../depcomp \
	x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I. -I../.. -I../.. -std=gnu99   -DLADCCA_BUILD -DHAVE_LADCCA -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib64/glib/include -march=k8 -O2 -msse3 -pipe -c -o ladcca_save_button-hints.o `test -f 'hints.c' || echo './'`hints.c
/bin/sh ../../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=k8 -O2 -msse3 -pipe  -Wl,-O1 -o ladcca_save_button  ladcca_save_button-save_button.o ladcca_save_button-hints.o ../../libladcca/libladcca.la -L/usr/lib64 -lgtk -lgdk -rdynamic -lgmodule -lglib -lXi -lXext -lXext -lX11 -lm 
/bin/sh ../../libtool --mode=link x86_64-pc-linux-gnu-gcc  -march=k8 -O2 -msse3 -pipe  -Wl,-O1 -o ladcca_save_button_2  ladcca_save_button_2-save_button_2.0.o ../../libladcca/libladcca.la -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobject-2.0 -lgmodule-2.0 -lglib-2.0   
mkdir .libs
x86_64-pc-linux-gnu-gcc -march=k8 -O2 -msse3 -pipe -Wl,-O1 -o .libs/ladcca_save_button ladcca_save_button-save_button.o ladcca_save_button-hints.o -rdynamic  ../../libladcca/.libs/libladcca.so -luuid -lpthread -L/usr/lib64 /usr/lib64/libgtk.so /usr/lib64/libgdk.so /usr/lib64/libgmodule.so /usr/lib64/libglib.so /usr/lib64/libXi.so /usr/lib64/libXext.so /usr/lib64/libX11.so /usr/lib64/libXau.so /usr/lib64/libXdmcp.so -ldl -lm
ladcca_save_button-hints.o: In function `g_bit_nth_lsf':
hints.c:(.text+0x0): multiple definition of `g_bit_nth_lsf'
ladcca_save_button-save_button.o:save_button.c:(.text+0x0): first defined here
ladcca_save_button-hints.o: In function `g_bit_nth_msf':
hints.c:(.text+0x20): multiple definition of `g_bit_nth_msf'
ladcca_save_button-save_button.o:save_button.c:(.text+0x20): first defined here
ladcca_save_button-hints.o: In function `g_bit_storage':
hints.c:(.text+0x50): multiple definition of `g_bit_storage'
ladcca_save_button-save_button.o:save_button.c:(.text+0x50): first defined here
collect2: ld returned 1 exit status
make[3]: *** [ladcca_save_button] Error 1
make[3]: *** Waiting for unfinished jobs....
x86_64-pc-linux-gnu-gcc -march=k8 -O2 -msse3 -pipe -Wl,-O1 -o .libs/ladcca_save_button_2 ladcca_save_button_2-save_button_2.0.o  ../../libladcca/.libs/libladcca.so -luuid /usr/lib64/libgtk-x11-2.0.so /usr/lib64/libgdk-x11-2.0.so /usr/lib64/libatk-1.0.so /usr/lib64/libgdk_pixbuf-2.0.so /usr/lib64/libgio-2.0.so /usr/lib64/libpangocairo-1.0.so /usr/lib64/libpangoft2-1.0.so /usr/lib64/libcairo.so /usr/lib64/libpixman-1.so /usr/lib64/libdirectfb.so /usr/lib64/libfusion.so /usr/lib64/libdirect.so -lpthread /usr/lib64/libpng12.so /usr/lib64/libXrender.so /usr/lib64/libX11.so /usr/lib64/libXau.so /usr/lib64/libXdmcp.so /usr/lib64/libpango-1.0.so -lm /usr/lib64/libfontconfig.so /usr/lib64/libfreetype.so -lz /usr/lib64/libexpat.so /usr/lib64/libgobject-2.0.so /usr/lib64/libgmodule-2.0.so -ldl /usr/lib64/libglib-2.0.so
creating ladcca_save_button_2
make[3]: Leaving directory `/var/tmp/portage/media-libs/ladcca-0.4.0-r1/work/ladcca-0.4.0/clients/save_button'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/media-libs/ladcca-0.4.0-r1/work/ladcca-0.4.0/clients'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/media-libs/ladcca-0.4.0-r1/work/ladcca-0.4.0'
make: *** [all] Error 2
 * 
 * ERROR: media-libs/ladcca-0.4.0-r1 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 2210:  Called die

The solution was the same, CLAGS=-fgnu89_inline

Thank you!
Comment 5 Samuli Suominen (RETIRED) gentoo-dev 2009-05-11 10:50:42 UTC
I don't think "append-flags -fgnu89_inline" is safe, the econf dies here with that.. Plus this ebuild doesn't fail here with GCC 4.3 or 4.4

Please try with up to date system, and reopen if it still fails