FS#25093 - [mesa] linking errors iwhen building from sources

Attached to Project: Arch Linux
Opened by Laurent Carlier (lordheavy) - Sunday, 10 July 2011, 08:28 GMT
Last edited by Andreas Radke (AndyRTR) - Wednesday, 13 July 2011, 15:22 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Jan de Groot (JGC)
Andreas Radke (AndyRTR)
Evangelos Foutras (foutrelis)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
When updating lib32-mesa to last 7.11rc1, i've noticed some linking errors, same are also present when building mesa :

make[3]: Leaving directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/winsys/nouveau/drm'
make[2]: Leaving directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/winsys'
make[2]: Entering directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/targets'
make[3]: Entering directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/targets/egl-static'
gcc -c -o egl.o egl.c -DFEATURE_ES1=1 -DFEATURE_ES2=1 -DFEATURE_GL=1 -DGALLIUM_RBUG -DGALLIUM_SOFTPIPE -DGALLIUM_TRACE -D_EGL_EXTERNAL_GL=1 -D_EGL_MAIN=_eglMain -D_EGL_PIPE_NOUVEAU=1 -D_EGL_PIPE_R300=1 -D_EGL_PIPE_R600=1 -I../../../../include -I../../../../src/egl/main -I../../../../src/gallium/auxiliary -I../../../../src/gallium/drivers -I../../../../src/gallium/include -I../../../../src/gallium/state_trackers/egl -I../../../../src/gallium/winsys -I../../../../src/mesa -I/usr/include/libdrm -DGALLIUM_LLVMPIPE -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -march=x86-64 -mtune=generic -O2 -pipe -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden
gcc -c -o egl_pipe.o egl_pipe.c -DFEATURE_ES1=1 -DFEATURE_ES2=1 -DFEATURE_GL=1 -DGALLIUM_RBUG -DGALLIUM_SOFTPIPE -DGALLIUM_TRACE -D_EGL_EXTERNAL_GL=1 -D_EGL_MAIN=_eglMain -D_EGL_PIPE_NOUVEAU=1 -D_EGL_PIPE_R300=1 -D_EGL_PIPE_R600=1 -I../../../../include -I../../../../src/egl/main -I../../../../src/gallium/auxiliary -I../../../../src/gallium/drivers -I../../../../src/gallium/include -I../../../../src/gallium/state_trackers/egl -I../../../../src/gallium/winsys -I../../../../src/mesa -I/usr/include/libdrm -DGALLIUM_LLVMPIPE -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -march=x86-64 -mtune=generic -O2 -pipe -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden
gcc -c -o egl_st.o egl_st.c -DFEATURE_ES1=1 -DFEATURE_ES2=1 -DFEATURE_GL=1 -DGALLIUM_RBUG -DGALLIUM_SOFTPIPE -DGALLIUM_TRACE -D_EGL_EXTERNAL_GL=1 -D_EGL_MAIN=_eglMain -D_EGL_PIPE_NOUVEAU=1 -D_EGL_PIPE_R300=1 -D_EGL_PIPE_R600=1 -I../../../../include -I../../../../src/egl/main -I../../../../src/gallium/auxiliary -I../../../../src/gallium/drivers -I../../../../src/gallium/include -I../../../../src/gallium/state_trackers/egl -I../../../../src/gallium/winsys -I../../../../src/mesa -I/usr/include/libdrm -DGALLIUM_LLVMPIPE -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -march=x86-64 -mtune=generic -O2 -pipe -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden
gcc -c -o st_GL.o st_GL.c -I ../../../../src/mesa -I../../../../src/gallium/include -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -march=x86-64 -mtune=generic -O2 -pipe -Wall -Wmissing-prototypes -std=c99 -ffast-math -fno-strict-aliasing -fPIC -DUSE_X86_64_ASM -D_GNU_SOURCE -DPTHREADS -DTEXTURE_FLOAT_ENABLED -DHAVE_POSIX_MEMALIGN -DUSE_XCB -DGLX_USE_TLS -DPTHREADS -DUSE_EXTERNAL_DXTN_LIB=1 -DIN_DRI_DRIVER -DGLX_DIRECT_RENDERING -DGLX_INDIRECT_RENDERING -DHAVE_ALIAS -DHAVE_LIBUDEV -DHAVE_XCB_DRI2 -DXCB_DRI2_CONNECT_DEVICE_NAME_BROKEN -DGALLIUM_LLVMPIPE -D__STDC_CONSTANT_MACROS -DHAVE_LLVM=0x0209 -fvisibility=hidden
egl_st.c: In function 'dlopen_gl_lib_cb':
egl_st.c:58:13: warning: field precision specifier '.*' expects argument of type 'int', but argument 4 has type 'size_t' [-Wformat]
egl_st.c:58:13: warning: field precision specifier '.*' expects argument of type 'int', but argument 4 has type 'size_t' [-Wformat]
/bin/sh ../../../../bin/mklib -o st_GL.so -noprefix -linker 'g++' \
-ldflags '-L../../../../lib -Wl,--hash-style=gnu -Wl,--as-needed -L/usr/lib/llvm -lpthread -lffi -ldl -lm ' \
-cplusplus -install ../../../../lib/egl \
st_GL.o -Wl,--start-group ../../../../src/mesa/libmesagallium.a ../../../../src/gallium/auxiliary/libgallium.a -Wl,--end-group \
-lm -lpthread -ldl -lLLVMObject -lLLVMMCJIT -lLLVMMCDisassembler -lLLVMXCoreCodeGen -lLLVMXCoreInfo -lLLVMSystemZCodeGen -lLLVMSystemZInfo -lLLVMSparcCodeGen -lLLVMSparcInfo -lLLVMPowerPCCodeGen -lLLVMPowerPCInfo -lLLVMPowerPCAsmPrinter -lLLVMPTXCodeGen -lLLVMPTXInfo -lLLVMMipsCodeGen -lLLVMMipsInfo -lLLVMMSP430CodeGen -lLLVMMSP430Info -lLLVMMSP430AsmPrinter -lLLVMMBlazeDisassembler -lLLVMMBlazeAsmParser -lLLVMMBlazeCodeGen -lLLVMMBlazeAsmPrinter -lLLVMMBlazeInfo -lLLVMLinker -lLLVMipo -lLLVMInterpreter -lLLVMInstrumentation -lLLVMJIT -lLLVMExecutionEngine -lLLVMCppBackend -lLLVMCppBackendInfo -lLLVMCellSPUCodeGen -lLLVMCellSPUInfo -lLLVMCBackend -lLLVMCBackendInfo -lLLVMBlackfinCodeGen -lLLVMBlackfinInfo -lLLVMBitWriter -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMX86Info -lLLVMAsmParser -lLLVMARMDisassembler -lLLVMARMAsmParser -lLLVMARMCodeGen -lLLVMARMAsmPrinter -lLLVMARMInfo -lLLVMArchive -lLLVMBitReader -lLLVMAlphaCodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMMCParser -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMCore -lLLVMAlphaInfo -lLLVMMC -lLLVMSupport -lstdc++
mklib: Making Linux shared library: st_GL.so
/bin/sh ../../../../bin/mklib -o egl_gallium.so -noprefix -linker 'g++' \
-ldflags '-L../../../../lib -Wl,--no-undefined -Wl,--hash-style=gnu -Wl,--as-needed -L/usr/lib/llvm -lpthread -lffi -ldl -lm ' \
-cplusplus -install ../../../../lib/egl \
egl.o egl_pipe.o egl_st.o -Wl,--start-group ../../../../src/gallium/auxiliary/libgallium.a ../../../../src/gallium/drivers/identity/libidentity.a ../../../../src/gallium/drivers/nouveau/libnouveau.a ../../../../src/gallium/drivers/nv50/libnv50.a ../../../../src/gallium/drivers/nvc0/libnvc0.a ../../../../src/gallium/drivers/nvfx/libnvfx.a ../../../../src/gallium/drivers/r300/libr300.a ../../../../src/gallium/drivers/r600/libr600.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/winsys/nouveau/drm/libnouveaudrm.a ../../../../src/gallium/winsys/r600/drm/libr600winsys.a ../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a ../../../../src/gallium/winsys/sw/xlib/libws_xlib.a ../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a -Wl,--end-group \
-lEGL -lX11 -lXext -lXfixes -ldl -ldrm -ldrm_nouveau -ldrm_radeon -lm -lrt -ludev -lLLVMObject -lLLVMMCJIT -lLLVMMCDisassembler -lLLVMXCoreCodeGen -lLLVMXCoreInfo -lLLVMSystemZCodeGen -lLLVMSystemZInfo -lLLVMSparcCodeGen -lLLVMSparcInfo -lLLVMPowerPCCodeGen -lLLVMPowerPCInfo -lLLVMPowerPCAsmPrinter -lLLVMPTXCodeGen -lLLVMPTXInfo -lLLVMMipsCodeGen -lLLVMMipsInfo -lLLVMMSP430CodeGen -lLLVMMSP430Info -lLLVMMSP430AsmPrinter -lLLVMMBlazeDisassembler -lLLVMMBlazeAsmParser -lLLVMMBlazeCodeGen -lLLVMMBlazeAsmPrinter -lLLVMMBlazeInfo -lLLVMLinker -lLLVMipo -lLLVMInterpreter -lLLVMInstrumentation -lLLVMJIT -lLLVMExecutionEngine -lLLVMCppBackend -lLLVMCppBackendInfo -lLLVMCellSPUCodeGen -lLLVMCellSPUInfo -lLLVMCBackend -lLLVMCBackendInfo -lLLVMBlackfinCodeGen -lLLVMBlackfinInfo -lLLVMBitWriter -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMX86Info -lLLVMAsmParser -lLLVMARMDisassembler -lLLVMARMAsmParser -lLLVMARMCodeGen -lLLVMARMAsmPrinter -lLLVMARMInfo -lLLVMArchive -lLLVMBitReader -lLLVMAlphaCodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMMCParser -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMCore -lLLVMAlphaInfo -lLLVMMC -lLLVMSupport -lstdc++
mklib: Making Linux shared library: egl_gallium.so
../../../../src/gallium/drivers/rbug/librbug.a(rbug_core.o): In function `pipe_thread_create.constprop.17':
rbug_core.c:(.text+0x13c9): undefined reference to `pthread_sigmask'
rbug_core.c:(.text+0x13e2): undefined reference to `pthread_create'
rbug_core.c:(.text+0x13f3): undefined reference to `pthread_sigmask'
../../../../src/gallium/drivers/rbug/librbug.a(rbug_core.o): In function `rbug_stop':
rbug_core.c:(.text+0x1474): undefined reference to `pthread_join'
../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a(radeon_drm_cs.o): In function `pipe_thread_create.constprop.7':
radeon_drm_cs.c:(.text+0x2b9): undefined reference to `pthread_sigmask'
radeon_drm_cs.c:(.text+0x2d2): undefined reference to `pthread_create'
radeon_drm_cs.c:(.text+0x2e3): undefined reference to `pthread_sigmask'
../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a(radeon_drm_cs.o): In function `radeon_drm_cs_sync_flush':
radeon_drm_cs.c:(.text+0x95b): undefined reference to `pthread_join'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `pipe_thread_create.constprop.5':
lp_rast.c:(.text+0x539): undefined reference to `pthread_sigmask'
lp_rast.c:(.text+0x552): undefined reference to `pthread_create'
lp_rast.c:(.text+0x563): undefined reference to `pthread_sigmask'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `thread_func':
lp_rast.c:(.text+0x615): undefined reference to `pthread_barrier_wait'
lp_rast.c:(.text+0x629): undefined reference to `pthread_barrier_wait'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `lp_rast_create':
lp_rast.c:(.text+0xf2b): undefined reference to `pthread_barrier_init'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `lp_rast_destroy':
lp_rast.c:(.text+0xffa): undefined reference to `pthread_join'
lp_rast.c:(.text+0x1064): undefined reference to `pthread_barrier_destroy'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x31): undefined reference to `pthread_mutexattr_init'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x3d): undefined reference to `pthread_mutexattr_settype'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x47): undefined reference to `pthread_mutexattr_setpshared'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x5a): undefined reference to `pthread_mutexattr_destroy'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::tryacquire()':
(.text+0xe8): undefined reference to `pthread_mutex_trylock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::RWMutexImpl()':
(.text+0x2b): undefined reference to `pthread_rwlock_init'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::~RWMutexImpl()':
(.text+0x58): undefined reference to `pthread_rwlock_destroy'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::reader_acquire()':
(.text+0x78): undefined reference to `pthread_rwlock_rdlock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::reader_release()':
(.text+0x98): undefined reference to `pthread_rwlock_unlock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::writer_acquire()':
(.text+0xb8): undefined reference to `pthread_rwlock_wrlock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::writer_release()':
(.text+0xd8): undefined reference to `pthread_rwlock_unlock'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::~ThreadLocalImpl()':
(.text+0x16): undefined reference to `pthread_key_delete'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::ThreadLocalImpl()':
(.text+0x8a): undefined reference to `pthread_key_create'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::setInstance(void const*)':
(.text+0xb7): undefined reference to `pthread_setspecific'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::getInstance()':
(.text+0xc7): undefined reference to `pthread_getspecific'
/usr/lib/llvm/libLLVMSupport.a(Threading.o): In function `llvm::llvm_execute_on_thread(void (*)(void*), void*, unsigned int)':
(.text+0x126): undefined reference to `pthread_create'
/usr/lib/llvm/libLLVMSupport.a(Threading.o): In function `llvm::llvm_execute_on_thread(void (*)(void*), void*, unsigned int)':
(.text+0x146): undefined reference to `pthread_attr_setstacksize'
/usr/lib/llvm/libLLVMSupport.a(Threading.o): In function `llvm::llvm_execute_on_thread(void (*)(void*), void*, unsigned int)':
(.text+0x158): undefined reference to `pthread_join'
collect2: ld returned 1 exit status
mklib: Installing egl_gallium.so in ../../../../lib/egl
mklib: Installing st_GL.so in ../../../../lib/egl
mv: cannot stat `egl_gallium.so': No such file or directory
make[3]: Leaving directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/targets/egl-static'


and of course when building package libegl:


make: Entering directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/targets/egl-static'
/bin/sh ../../../../bin/mklib -o egl_gallium.so -noprefix -linker 'g++' \
-ldflags '-L../../../../lib -Wl,--no-undefined -Wl,--hash-style=gnu -Wl,--as-needed -L/usr/lib/llvm -lpthread -lffi -ldl -lm ' \
-cplusplus -install ../../../../lib/egl \
egl.o egl_pipe.o egl_st.o -Wl,--start-group ../../../../src/gallium/auxiliary/libgallium.a ../../../../src/gallium/drivers/identity/libidentity.a ../../../../src/gallium/drivers/nouveau/libnouveau.a ../../../../src/gallium/drivers/nv50/libnv50.a ../../../../src/gallium/drivers/nvc0/libnvc0.a ../../../../src/gallium/drivers/nvfx/libnvfx.a ../../../../src/gallium/drivers/r300/libr300.a ../../../../src/gallium/drivers/r600/libr600.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/winsys/nouveau/drm/libnouveaudrm.a ../../../../src/gallium/winsys/r600/drm/libr600winsys.a ../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a ../../../../src/gallium/winsys/sw/xlib/libws_xlib.a ../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a -Wl,--end-group \
-lEGL -lX11 -lXext -lXfixes -ldl -ldrm -ldrm_nouveau -ldrm_radeon -lm -lrt -ludev -lLLVMObject -lLLVMMCJIT -lLLVMMCDisassembler -lLLVMXCoreCodeGen -lLLVMXCoreInfo -lLLVMSystemZCodeGen -lLLVMSystemZInfo -lLLVMSparcCodeGen -lLLVMSparcInfo -lLLVMPowerPCCodeGen -lLLVMPowerPCInfo -lLLVMPowerPCAsmPrinter -lLLVMPTXCodeGen -lLLVMPTXInfo -lLLVMMipsCodeGen -lLLVMMipsInfo -lLLVMMSP430CodeGen -lLLVMMSP430Info -lLLVMMSP430AsmPrinter -lLLVMMBlazeDisassembler -lLLVMMBlazeAsmParser -lLLVMMBlazeCodeGen -lLLVMMBlazeAsmPrinter -lLLVMMBlazeInfo -lLLVMLinker -lLLVMipo -lLLVMInterpreter -lLLVMInstrumentation -lLLVMJIT -lLLVMExecutionEngine -lLLVMCppBackend -lLLVMCppBackendInfo -lLLVMCellSPUCodeGen -lLLVMCellSPUInfo -lLLVMCBackend -lLLVMCBackendInfo -lLLVMBlackfinCodeGen -lLLVMBlackfinInfo -lLLVMBitWriter -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMX86Info -lLLVMAsmParser -lLLVMARMDisassembler -lLLVMARMAsmParser -lLLVMARMCodeGen -lLLVMARMAsmPrinter -lLLVMARMInfo -lLLVMArchive -lLLVMBitReader -lLLVMAlphaCodeGen -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMMCParser -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMTransformUtils -lLLVMipa -lLLVMAnalysis -lLLVMTarget -lLLVMCore -lLLVMAlphaInfo -lLLVMMC -lLLVMSupport -lstdc++
mklib: Making Linux shared library: egl_gallium.so
../../../../src/gallium/drivers/rbug/librbug.a(rbug_core.o): In function `pipe_thread_create.constprop.17':
rbug_core.c:(.text+0x13c9): undefined reference to `pthread_sigmask'
rbug_core.c:(.text+0x13e2): undefined reference to `pthread_create'
rbug_core.c:(.text+0x13f3): undefined reference to `pthread_sigmask'
../../../../src/gallium/drivers/rbug/librbug.a(rbug_core.o): In function `rbug_stop':
rbug_core.c:(.text+0x1474): undefined reference to `pthread_join'
../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a(radeon_drm_cs.o): In function `pipe_thread_create.constprop.7':
radeon_drm_cs.c:(.text+0x2b9): undefined reference to `pthread_sigmask'
radeon_drm_cs.c:(.text+0x2d2): undefined reference to `pthread_create'
radeon_drm_cs.c:(.text+0x2e3): undefined reference to `pthread_sigmask'
../../../../src/gallium/winsys/radeon/drm/libradeonwinsys.a(radeon_drm_cs.o): In function `radeon_drm_cs_sync_flush':
radeon_drm_cs.c:(.text+0x95b): undefined reference to `pthread_join'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `pipe_thread_create.constprop.5':
lp_rast.c:(.text+0x539): undefined reference to `pthread_sigmask'
lp_rast.c:(.text+0x552): undefined reference to `pthread_create'
lp_rast.c:(.text+0x563): undefined reference to `pthread_sigmask'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `thread_func':
lp_rast.c:(.text+0x615): undefined reference to `pthread_barrier_wait'
lp_rast.c:(.text+0x629): undefined reference to `pthread_barrier_wait'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `lp_rast_create':
lp_rast.c:(.text+0xf2b): undefined reference to `pthread_barrier_init'
../../../../src/gallium/drivers/llvmpipe/libllvmpipe.a(lp_rast.o): In function `lp_rast_destroy':
lp_rast.c:(.text+0xffa): undefined reference to `pthread_join'
lp_rast.c:(.text+0x1064): undefined reference to `pthread_barrier_destroy'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x31): undefined reference to `pthread_mutexattr_init'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x3d): undefined reference to `pthread_mutexattr_settype'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x47): undefined reference to `pthread_mutexattr_setpshared'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::MutexImpl(bool)':
(.text+0x5a): undefined reference to `pthread_mutexattr_destroy'
/usr/lib/llvm/libLLVMSupport.a(Mutex.o): In function `llvm::sys::MutexImpl::tryacquire()':
(.text+0xe8): undefined reference to `pthread_mutex_trylock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::RWMutexImpl()':
(.text+0x2b): undefined reference to `pthread_rwlock_init'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::~RWMutexImpl()':
(.text+0x58): undefined reference to `pthread_rwlock_destroy'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::reader_acquire()':
(.text+0x78): undefined reference to `pthread_rwlock_rdlock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::reader_release()':
(.text+0x98): undefined reference to `pthread_rwlock_unlock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::writer_acquire()':
(.text+0xb8): undefined reference to `pthread_rwlock_wrlock'
/usr/lib/llvm/libLLVMSupport.a(RWMutex.o): In function `llvm::sys::RWMutexImpl::writer_release()':
(.text+0xd8): undefined reference to `pthread_rwlock_unlock'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::~ThreadLocalImpl()':
(.text+0x16): undefined reference to `pthread_key_delete'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::ThreadLocalImpl()':
(.text+0x8a): undefined reference to `pthread_key_create'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::setInstance(void const*)':
(.text+0xb7): undefined reference to `pthread_setspecific'
/usr/lib/llvm/libLLVMSupport.a(ThreadLocal.o): In function `llvm::sys::ThreadLocalImpl::getInstance()':
(.text+0xc7): undefined reference to `pthread_getspecific'
/usr/lib/llvm/libLLVMSupport.a(Threading.o): In function `llvm::llvm_execute_on_thread(void (*)(void*), void*, unsigned int)':
(.text+0x126): undefined reference to `pthread_create'
/usr/lib/llvm/libLLVMSupport.a(Threading.o): In function `llvm::llvm_execute_on_thread(void (*)(void*), void*, unsigned int)':
(.text+0x146): undefined reference to `pthread_attr_setstacksize'
/usr/lib/llvm/libLLVMSupport.a(Threading.o): In function `llvm::llvm_execute_on_thread(void (*)(void*), void*, unsigned int)':
(.text+0x158): undefined reference to `pthread_join'
collect2: ld returned 1 exit status
mklib: Installing egl_gallium.so in ../../../../lib/egl
mv: cannot stat `egl_gallium.so': No such file or directory
/bin/install -c -d /build/pkg/libegl/usr/lib/egl
for out in ../../../../lib/egl/egl_gallium.so ../../../../lib/egl/st_GL.so; do \
/bin/sh ../../../../bin/minstall -m 755 "$out" /build/pkg/libegl/usr/lib/egl; \
done
Unknown type of argument: ../../../../lib/egl/egl_gallium.so
make: Leaving directory `/build/src/mesa-b033f050fd5179b051181a0a4b6d94110624d25c/src/gallium/targets/egl-static'


* There was also similar errors with previous mesa version from testing (tested with lib32-mesa)
This task depends upon

Closed by  Andreas Radke (AndyRTR)
Wednesday, 13 July 2011, 15:22 GMT
Reason for closing:  Fixed
Additional comments about closing:  final fix included in 7.11rc1-4
Comment by Andreas Radke (AndyRTR) - Sunday, 10 July 2011, 09:32 GMT
Though the build finishes here I also see this error message in my builds. Please try to find out the reason and a fix. Thx.
Comment by Andreas Radke (AndyRTR) - Sunday, 10 July 2011, 09:54 GMT
From the error message this may come from removing the libpthread-stubs dependency in our libdrm pkg. Can you try to readd this and see if it solves this? Maybe some Xorg related packages would require further rebuilds.
Comment by Laurent Carlier (lordheavy) - Sunday, 10 July 2011, 12:39 GMT
Ok i've tried with libpthread-stub from aur and removing patch from libdrm, but same problem occur.
Comment by Jan de Groot (JGC) - Sunday, 10 July 2011, 14:41 GMT
This is not a bug in our libdrm, mesa or missing pthread-stubs package. Looking at the error messages, it looks like your LLVM installation has broken libraries. AFAIK our mesa doesn't link to LLVM libraries so that's why the official build succeeds inside a chroot.
Comment by Evangelos Foutras (foutrelis) - Sunday, 10 July 2011, 21:27 GMT
If I'm not mistaken, the problem is that -lpthread comes before the object files that need it. And since LDFLAGS includes -Wl,--as-needed, pthread gets the boot. :)
Comment by Laurent Carlier (lordheavy) - Sunday, 10 July 2011, 21:39 GMT
yes, adding "export LDFLAGS=${LDFLAGS/-Wl,--as-needed/}" fix the problem. Good catch!

Comment by Andreas Radke (AndyRTR) - Monday, 11 July 2011, 16:18 GMT
Please report this upstream to the mesa guys get it fixed for the future.
Comment by Laurent Carlier (lordheavy) - Monday, 11 July 2011, 16:44 GMT
Upstream bug report https://bugs.freedesktop.org/show_bug.cgi?id=39147

Feel free to add comments :-)
Comment by Andreas Radke (AndyRTR) - Monday, 11 July 2011, 17:11 GMT
Thanks, CC'ed to it.

Loading...