Discussion:
[directfb-users] DirectFB-1.6.2 build fails with "multiple definition" errors
Patrick McMunn
2012-12-31 07:00:54 UTC
Permalink
I'm getting this error when compiling (I used -j1 and V=1 for verbose
output to help troubleshoot).

libtool: link: x86_64-pc-linux-gnu-g++ -fPIC -DPIC -shared -nostdlib
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/../../../../lib64/crti.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/crtbeginS.o .libs/idirectfb.o
.libs/directfb.o .libs/directfb_result.o .libs/dummy.o .libs/init.o
-Wl,--whole-archive core/.libs/libdirectfb_core.a
display/.libs/libdirectfb_display.a
windows/.libs/libdirectfb_windows.a media/.libs/libdirectfb_media.a
input/.libs/libdirectfb_input.a misc/.libs/libdirectfb_misc.a
gfx/.libs/libdirectfb_gfx.a -Wl,--no-whole-archive -Wl,-rpath
-Wl,/var/tmp/portage/dev-libs/DirectFB-1.6.2/work/DirectFB-1.6.2/lib/direct/.libs
-Wl,-rpath -Wl,/var/tmp/portage/dev-libs/DirectFB-1.6.2/work/DirectFB-1.6.2/lib/fusion/.libs
-lz ../lib/direct/.libs/libdirect.so ../lib/fusion/.libs/libfusion.so
-ldl -lrt -lpthread -L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/../../../../lib64
-L/lib/../lib64 -L/usr/lib/../lib64
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/../../../../x86_64-pc-linux-gnu/lib
-L/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/../../.. -lstdc++ -lm -lc
-lgcc_s /usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/crtendS.o
/usr/lib/gcc/x86_64-pc-linux-gnu/4.7.2/../../../../lib64/crtn.o -O2
-march=core2 -O2 -O2 -march=core2 -Wl,-O1 -Wl,--sort-common
-Wl,--as-needed -Wl,-O1 -Wl,--sort-common -Wl,--as-needed
-Wl,-soname -Wl,libdirectfb-1.6.so.0 -o .libs/libdirectfb-1.6.so.0.2.0
gfx/.libs/libdirectfb_gfx.a(generic_dummy.o): In function `gDrawLine':
generic_dummy.c:(.text+0xf0): multiple definition of `gDrawLine'
gfx/.libs/libdirectfb_gfx.a(generic_draw_line.o):generic_draw_line.c:(.text+0x0):
first defined here
gfx/.libs/libdirectfb_gfx.a(generic_dummy.o): In function `gBlit':
generic_dummy.c:(.text+0x100): multiple definition of `gBlit'
gfx/.libs/libdirectfb_gfx.a(generic_blit.o):generic_blit.c:(.text+0x0):
first defined here
gfx/.libs/libdirectfb_gfx.a(generic_fill_rectangle.o): In function
`gFillRectangle':
generic_fill_rectangle.c:(.text+0x0): multiple definition of `gFillRectangle'
gfx/.libs/libdirectfb_gfx.a(generic_dummy.o):generic_dummy.c:(.text+0xe0):
first defined here
gfx/.libs/libdirectfb_gfx.a(generic_stretch_blit.o): In function `gStretchBlit':
generic_stretch_blit.c:(.text+0x0): multiple definition of `gStretchBlit'
gfx/.libs/libdirectfb_gfx.a(generic_dummy.o):generic_dummy.c:(.text+0x110):
first defined here
collect2: error: ld returned 1 exit status
make[3]: *** [libdirectfb.la] Error 1
make[3]: Leaving directory
`/var/tmp/portage/dev-libs/DirectFB-1.6.2/work/DirectFB-1.6.2/src'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/var/tmp/portage/dev-libs/DirectFB-1.6.2/work/DirectFB-1.6.2/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/var/tmp/portage/dev-libs/DirectFB-1.6.2/work/DirectFB-1.6.2'
make: *** [all] Error 2

Does anyone have any ideas what could be causing it and how to fix it?
--
Patrick McMunn

- Learn more about the Catholic Faith: http://www.catholic.com/
- Pray with the Church: http://www.universalis.com/
Loading...