[Bug 53109] New: egl_gallium fails to link if both r600 and radeonsi are enabled

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Fri Aug 3 15:19:31 PDT 2012


https://bugs.freedesktop.org/show_bug.cgi?id=53109

             Bug #: 53109
           Summary: egl_gallium fails to link if both r600 and radeonsi
                    are enabled
    Classification: Unclassified
           Product: Mesa
           Version: git
          Platform: Other
        OS/Version: All
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/DRI/Radeon
        AssignedTo: dri-devel at lists.freedesktop.org
        ReportedBy: freedesktop at blino.org


When both r600 and radeonsi gallium drivers are enabled, egl_gallium fails to
link because of duplicate symbols in r600 and radeonsi.
See my configure command line and build errors below.

  $ ./configure --build=x86_64-mageia-linux-gnu --prefix=/usr
--exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc
--datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64
--libexecdir=/usr/lib64 --localstatedir=/var --sharedstatedir=/usr/com
--mandir=/usr/share/man --infodir=/usr/share/info --x-includes=/usr/include
--x-libraries=/usr/lib64 --enable-dri --enable-glx
--with-dri-driverdir=/usr/lib64/dri
--with-dri-drivers=i915,i965,nouveau,r200,radeon,swrast --enable-shared-dricore
--enable-egl --with-egl-platforms=x11,wayland,drm --enable-gbm
--enable-shared-glapi --enable-gles1 --enable-gles2 --enable-openvg
--enable-gallium-egl --enable-gallium-g3dvl --enable-osmesa --disable-xvmc
--enable-vdpau --disable-va
--with-gallium-drivers=r300,r600,radeonsi,nouveau,swrast --enable-gallium-llvm


gmake[3]: Entering directory
`/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/targets/egl-static'
/bin/sh ../../../../bin/mklib -o egl_gallium.so -noprefix -linker 'g++' \
-ldflags '-L../../../../lib64 -Wl,--no-undefined -L/usr/lib64/llvm
-Wl,--as-needed -Wl,-z,relro -Wl,-O1 -Wl,--build-id -Wl,--enable-new-dtags
-L/usr/lib -lpthread -lffi -ldl -lm ' \
-cplusplus -install ../../../../lib64/egl \
egl.o egl_pipe.o egl_st.o -Wl,--start-group
../../../../src/egl/wayland/wayland-drm/.libs/libwayland-drm.a
../../../../src/gallium/auxiliary/libgallium.a
../../../../src/gallium/drivers/identity/libidentity.a
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a
../../../../src/gallium/drivers/nouveau/libnouveau.a
../../../../src/gallium/drivers/nv30/libnv30.a
../../../../src/gallium/drivers/nv50/libnv50.a
../../../../src/gallium/drivers/nvc0/libnvc0.a
../../../../src/gallium/drivers/r300/libr300.a
../../../../src/gallium/drivers/r600/libr600.a
../../../../src/gallium/drivers/radeonsi/libradeonsi.a
../../../../src/gallium/drivers/rbug/librbug.a
../../../../src/gallium/drivers/softpipe/libsoftpipe.a
../../../../src/gallium/drivers/trace/libtrace.a
../../../../src/gallium/state_trackers/egl/libegl.a
../../../../src/gallium/state_trackers/vega/libvega.a
../../../../src/gallium/winsys/nouveau/drm/libnouveaudrm.a
../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a
../../../../src/gallium/winsys/sw/wayland/libws_wayland.a
../../../../src/gallium/winsys/sw/xlib/libws_xlib.a
../../../../src/mesa/libmesagallium.a -Wl,--end-group \
-lEGL -lOpenVG -lX11 -lXext -lXfixes -ldl -ldrm -ldrm_nouveau -ldrm_radeon
-lgbm -lglapi -lm -lpthread -lrt -ludev -lwayland-client -lwayland-server
-lLLVMMCJIT -lLLVMBitWriter -lLLVMX86AsmParser -lLLVMX86Disassembler
-lLLVMX86CodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMMCParser
-lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMJIT
-lLLVMRuntimeDyld -lLLVMExecutionEngine -lLLVMCodeGen -lLLVMScalarOpts
-lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget
-lLLVMMC -lLLVMObject -lLLVMCore -lLLVMSupport
mklib: Making Linux shared library: egl_gallium.so
/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for
-lpthread
/bin/ld: skipping incompatible /usr/lib/libdl.so when searching for -ldl
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(evergreen_hw_context.o):
In function `evergreen_flush_vgt_streamout':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/evergreen_hw_context.c:117:
multiple definition of `evergreen_flush_vgt_streamout'
../../../../src/gallium/drivers/r600/libr600.a(evergreen_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/evergreen_hw_context.c:753:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(evergreen_hw_context.o):
In function `evergreen_set_streamout_enable':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/evergreen_hw_context.c:137:
multiple definition of `evergreen_set_streamout_enable'
../../../../src/gallium/drivers/r600/libr600.a(evergreen_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/evergreen_hw_context.c:773:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_buffer.o): In
function `r600_init_resource':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_buffer.c:121:
multiple definition of `r600_init_resource'
../../../../src/gallium/drivers/r600/libr600.a(r600_buffer.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_buffer.c:199:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_buffer.o): In
function `r600_buffer_create':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_buffer.c:161:
multiple definition of `r600_buffer_create'
../../../../src/gallium/drivers/r600/libr600.a(r600_buffer.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_buffer.c:239:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_hw_context.o): In
function `r600_get_backend_mask':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_hw_context.c:37:
multiple definition of `r600_get_backend_mask'
../../../../src/gallium/drivers/r600/libr600.a(r600_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_hw_context.c:33:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_hw_context.o): In
function `r600_need_cs_space':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_hw_context.c:150:
multiple definition of `r600_need_cs_space'
../../../../src/gallium/drivers/r600/libr600.a(r600_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_hw_context.c:682:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_hw_context.o): In
function `r600_context_emit_fence':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_hw_context.c:260:
multiple definition of `r600_context_emit_fence'
../../../../src/gallium/drivers/r600/libr600.a(r600_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_hw_context.c:1135:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_hw_context.o): In
function `r600_context_streamout_begin':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_hw_context.c:669:
multiple definition of `r600_context_streamout_begin'
../../../../src/gallium/drivers/r600/libr600.a(r600_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_hw_context.c:1196:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_hw_context.o): In
function `r600_context_streamout_end':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_hw_context.c:746:
multiple definition of `r600_context_streamout_end'
../../../../src/gallium/drivers/r600/libr600.a(r600_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_hw_context.c:1302:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_hw_context.o): In
function `r600_context_flush':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_hw_context.c:206:
multiple definition of `r600_context_flush'
../../../../src/gallium/drivers/r600/libr600.a(r600_hw_context.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_hw_context.c:1039:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_transfer_unmap':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:888:
multiple definition of `r600_texture_transfer_unmap'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:968:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_transfer_map':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:851:
multiple definition of `r600_texture_transfer_map'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:929:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_transfer_destroy':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:828:
multiple definition of `r600_texture_transfer_destroy'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:904:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_get_offset':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:78:
multiple definition of `r600_texture_get_offset'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:70:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_create':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:564:
multiple definition of `r600_texture_create'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:632:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_from_handle':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:631:
multiple definition of `r600_texture_from_handle'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:702:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_texture_get_transfer':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:720:
multiple definition of `r600_texture_get_transfer'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:790:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_texture.o): In
function `r600_init_surface_functions':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_texture.c:904:
multiple definition of `r600_init_surface_functions'
../../../../src/gallium/drivers/r600/libr600.a(r600_texture.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_texture.c:982:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_blit.o): In
function `r600_blit_uncompress_depth':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_blit.c:117:
multiple definition of `r600_blit_uncompress_depth'
../../../../src/gallium/drivers/r600/libr600.a(r600_blit.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_blit.c:127:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_blit.o): In
function `r600_flush_depth_textures':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_blit.c:157:
multiple definition of `r600_flush_depth_textures'
../../../../src/gallium/drivers/r600/libr600.a(r600_blit.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_blit.c:194:
first defined here
../../../../src/gallium/drivers/radeonsi/libradeonsi.a(r600_blit.o): In
function `r600_init_blit_functions':
/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/radeonsi/r600_blit.c:379:
multiple definition of `r600_init_blit_functions'
../../../../src/gallium/drivers/r600/libr600.a(r600_blit.o):/home/iurt/rpm/BUILD/mesa-20120802/src/gallium/drivers/r600/r600_blit.c:408:
first defined here
/bin/ld: skipping incompatible /usr/lib/libdl.so when searching for -ldl
/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
/bin/ld: skipping incompatible /usr/lib/libpthread.so when searching for
-lpthread
/bin/ld: skipping incompatible /usr/lib/librt.so when searching for -lrt
/bin/ld: skipping incompatible /usr/lib/libm.so when searching for -lm
/bin/ld: skipping incompatible /usr/lib/libgcc_s.so when searching for -lgcc_s
/bin/ld: skipping incompatible /usr/lib/libc.so when searching for -lc
/bin/ld: skipping incompatible /usr/lib/libgcc_s.so when searching for -lgcc_s
collect2: error: ld returned 1 exit status
mklib: Installing egl_gallium.so in ../../../../lib64/egl
mv: cannot stat 'egl_gallium.so': No such file or directory
/bin/install -c -d
/home/iurt/rpm/BUILDROOT/mesa-8.1.0-0.git20120802.2.mga3.x86_64/usr/lib64/egl
for out in ../../../../lib64/egl/egl_gallium.so; do \
/bin/sh ../../../../bin/minstall -m 755 "$out"
/home/iurt/rpm/BUILDROOT/mesa-8.1.0-0.git20120802.2.mga3.x86_64/usr/lib64/egl;
\
done
Unknown type of argument: ../../../../lib64/egl/egl_gallium.so
gmake[3]: *** [install] Error 1

-- 
Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.


More information about the dri-devel mailing list