LINUX.ORG.RU

Mesa не компилируется со статическим LLVM через meson

 , , , ,


0

1

Я пытаюсь скомпилировать mesa 19.2.1, в meson-options.txt отключил shared llvm, ввёл команды:

meson build/

ninja -C build/

Но мне выдаёт ошибку:

[1019/1047] Compiling C object 'src/ga...a9e9c@@llvmpipe@sta/lp_setup_tri.c.o'.
../src/gallium/drivers/llvmpipe/lp_setup_tri.c: In function ‘do_triangle_ccw’:
../src/gallium/drivers/llvmpipe/lp_setup_tri.c:706:33: warning: ‘scissor’ may be used uninitialized in this function [-Wmaybe-uninitialized]
  706 |          plane_s->c = (1-scissor->y0) << 8;
      |                          ~~~~~~~^~~~
[1047/1047] Linking target src/gallium/targets/libgl-xlib/libGL.so.1.5.0.
FAILED: src/gallium/targets/libgl-xlib/libGL.so.1.5.0 
c++  -o src/gallium/targets/libgl-xlib/libGL.so.1.5.0 'src/gallium/targets/libgl-xlib/a6bea21@@GL@sha/xlib.c.o' -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,--start-group -Wl,-soname,libGL.so.1 src/gallium/state_trackers/glx/xlib/libxlib.a src/gallium/winsys/sw/xlib/libws_xlib.a src/mapi/glapi/libglapi_static.a src/gallium/auxiliary/libgallium.a src/compiler/glsl/libglsl.a src/compiler/glsl/glcpp/libglcpp.a src/util/libmesa_util.a src/compiler/nir/libnir.a src/compiler/libcompiler.a src/mesa/libmesa_gallium.a src/mesa/libmesa_sse41.a src/gallium/drivers/llvmpipe/libllvmpipe.a src/gallium/drivers/softpipe/libsoftpipe.a src/gallium/drivers/swr/libmesaswr.a -Wl,-Bsymbolic -Wl,--gc-sections -Wl,--version-script /home/xdroid/Desktop/mesa/src/gallium/targets/libgl-xlib/libgl-xlib.sym -pthread /usr/lib/i386-linux-gnu/libX11.so /usr/lib/i386-linux-gnu/libXext.so /usr/lib/i386-linux-gnu/libxcb.so -lrt -ldl -lpthread -lm -L/usr/lib/llvm-8/lib -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMGlobalISel -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMAggressiveInstCombine -lLLVMTransformUtils -lLLVMBitWriter -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMMCJIT -lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMProfileData -lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser -lLLVMBitReader -lLLVMCore -lLLVMMCDisassembler -lLLVMMC -lLLVMDebugInfoCodeView -lLLVMDebugInfoMSF -lLLVMBinaryFormat -lLLVMSupport -lLLVMDemangle -lz -ltinfo /usr/lib/i386-linux-gnu/libz.so -L/usr/lib/llvm-8/lib -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMGlobalISel -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMAggressiveInstCombine -lLLVMTransformUtils -lLLVMBitWriter -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMMCJIT -lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMProfileData -lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser -lLLVMBitReader -lLLVMCore -lLLVMMCDisassembler -lLLVMMC -lLLVMDebugInfoCodeView -lLLVMDebugInfoMSF -lLLVMBinaryFormat -lLLVMSupport -lLLVMDemangle -lz -ltinfo -L/usr/lib/llvm-8/lib -lLLVMX86Disassembler -lLLVMX86AsmParser -lLLVMX86CodeGen -lLLVMGlobalISel -lLLVMSelectionDAG -lLLVMAsmPrinter -lLLVMCodeGen -lLLVMScalarOpts -lLLVMInstCombine -lLLVMAggressiveInstCombine -lLLVMTransformUtils -lLLVMBitWriter -lLLVMX86Desc -lLLVMX86Info -lLLVMX86AsmPrinter -lLLVMX86Utils -lLLVMMCJIT -lLLVMExecutionEngine -lLLVMTarget -lLLVMAnalysis -lLLVMProfileData -lLLVMRuntimeDyld -lLLVMObject -lLLVMMCParser -lLLVMBitReader -lLLVMCore -lLLVMMCDisassembler -lLLVMMC -lLLVMDebugInfoCodeView -lLLVMDebugInfoMSF -lLLVMBinaryFormat -lLLVMSupport -lLLVMDemangle -lz -ltinfo -Wl,--end-group '-Wl,-rpath,$ORIGIN/../../state_trackers/glx/xlib:$ORIGIN/../../winsys/sw/xlib:$ORIGIN/../../../mapi/glapi:$ORIGIN/../../auxiliary:$ORIGIN/../../../compiler/glsl:$ORIGIN/../../../compiler/glsl/glcpp:$ORIGIN/../../../util:$ORIGIN/../../../compiler/nir:$ORIGIN/../../../compiler:$ORIGIN/../../../mesa:$ORIGIN/../../drivers/llvmpipe:$ORIGIN/../../drivers/softpipe:$ORIGIN/../../drivers/swr' -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/gallium/state_trackers/glx/xlib -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/gallium/winsys/sw/xlib -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/mapi/glapi -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/gallium/auxiliary -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/compiler/glsl -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/compiler/glsl/glcpp -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/util -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/compiler/nir -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/compiler -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/mesa -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/gallium/drivers/llvmpipe -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/gallium/drivers/softpipe -Wl,-rpath-link,/home/xdroid/Desktop/mesa/build/src/gallium/drivers/swr
/usr/lib/llvm-8/lib/libLLVMSupport.a(DynamicLibrary.cpp.o): In function `llvm::sys::DynamicLibrary::getPermanentLibrary(char const*, std::string*)':
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary19getPermanentLibraryEPKcPSs+0x50): undefined reference to `dlopen'
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary19getPermanentLibraryEPKcPSs+0xc1): undefined reference to `dlerror'
/usr/lib/llvm-8/lib/libLLVMSupport.a(DynamicLibrary.cpp.o): In function `llvm::sys::DynamicLibrary::HandleSet::AddLibrary(void*, bool, bool)':
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet10AddLibraryEPvbb[_ZN4llvm3sys14DynamicLibrary9HandleSet10AddLibraryEPvbb]+0xb1): undefined reference to `dlclose'
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet10AddLibraryEPvbb[_ZN4llvm3sys14DynamicLibrary9HandleSet10AddLibraryEPvbb]+0x19a): undefined reference to `dlclose'
/usr/lib/llvm-8/lib/libLLVMSupport.a(DynamicLibrary.cpp.o): In function `llvm::sys::DynamicLibrary::HandleSet::Lookup(char const*, llvm::sys::DynamicLibrary::SearchOrdering)':
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE[_ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE]+0x4f): undefined reference to `dlsym'
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE[_ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE]+0x78): undefined reference to `dlsym'
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE[_ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE]+0xa9): undefined reference to `dlsym'
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE[_ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE]+0xdf): undefined reference to `dlsym'
DynamicLibrary.cpp:(.text._ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE[_ZN4llvm3sys14DynamicLibrary9HandleSet6LookupEPKcNS1_14SearchOrderingE]+0x122): undefined reference to `dlsym'
/usr/lib/llvm-8/lib/libLLVMSupport.a(DynamicLibrary.cpp.o): In function `llvm::object_deleter<llvm::sys::DynamicLibrary::HandleSet>::call(void*)':
DynamicLibrary.cpp:(.text._ZN4llvm14object_deleterINS_3sys14DynamicLibrary9HandleSetEE4callEPv[_ZN4llvm14object_deleterINS_3sys14DynamicLibrary9HandleSetEE4callEPv]+0x3a): undefined reference to `dlclose'
DynamicLibrary.cpp:(.text._ZN4llvm14object_deleterINS_3sys14DynamicLibrary9HandleSetEE4callEPv[_ZN4llvm14object_deleterINS_3sys14DynamicLibrary9HandleSetEE4callEPv]+0x4d): undefined reference to `dlclose'
src/gallium/auxiliary/libgallium.a(util_u_dl.c.o): In function `util_dl_open':
/home/xdroid/Desktop/mesa/build/../src/gallium/auxiliary/util/u_dl.c:48: undefined reference to `dlopen'
src/gallium/auxiliary/libgallium.a(util_u_dl.c.o): In function `util_dl_get_proc_address':
/home/xdroid/Desktop/mesa/build/../src/gallium/auxiliary/util/u_dl.c:62: undefined reference to `dlsym'
src/gallium/auxiliary/libgallium.a(util_u_dl.c.o): In function `util_dl_close':
/home/xdroid/Desktop/mesa/build/../src/gallium/auxiliary/util/u_dl.c:75: undefined reference to `dlclose'
src/gallium/auxiliary/libgallium.a(util_u_dl.c.o): In function `util_dl_error':
/home/xdroid/Desktop/mesa/build/../src/gallium/auxiliary/util/u_dl.c:88: undefined reference to `dlerror'
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
xdroid@ubuntu:~/Desktop/mesa$ 

Попробовал по другому:

meson build/ -Dc_args=-ldl -Dcpp_args=-ldl -Dc_link_args=-ldl -Dcpp_link_args=-ldl -Dlink_args=-ldl -Dld_args=-ldl

ninja -C build/

Тоже самое. Что делать?



Последнее исправление: gradle (всего исправлений: 1)

Ответ на: комментарий от anonymous

Autotools больше не поддерживается, и собирает кривые библиотеки. Мне нужен meson. Что делать с этими ошибками? Почему -ldl не помог? as-needed пробовал найти, нигде его там нет, так что причина не в нём

gradle
() автор топика
Ответ на: комментарий от gradle

Помогите, что я не так делаю? Как и куда мне ввести -ldl, чтобы заработало?

gradle
() автор топика
Ответ на: комментарий от anonymous

Meson-options.txt можно настраивать, если ты не в курсе. И ты даже не прочитал, какая у меня проблема, не в этом дело.

gradle
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.