oops, bash_history indicates I forgot to unset MESA_WHICH_LLVM before running makepkg --printsrcinfo .
I'll correct it tomorrow.
Git Clone URL: | https://aur.archlinux.org/mesa-git.git (read-only, click to copy) |
---|---|
Package Base: | mesa-git |
Description: | an open-source implementation of the OpenGL specification, git version |
Upstream URL: | https://www.mesa3d.org |
Keywords: | mesa wayland X11 |
Licenses: | custom |
Conflicts: | libva-mesa-driver, mesa, mesa-libgl, mesa-vdpau, opencl-clover-mesa, opencl-rusticl-mesa, vulkan-intel, vulkan-mesa-layers, vulkan-nouveau, vulkan-radeon, vulkan-swrast, vulkan-virtio |
Provides: | libva-mesa-driver, mesa, mesa-libgl, mesa-vdpau, opencl-driver, opencl-rusticl-mesa, opengl-driver, vulkan-driver, vulkan-intel, vulkan-mesa-layers, vulkan-nouveau, vulkan-radeon, vulkan-swrast, vulkan-virtio |
Submitter: | Krejzi |
Maintainer: | rjahanbakhshi (Lone_Wolf) |
Last Packager: | Lone_Wolf |
Votes: | 182 |
Popularity: | 0.47 |
First Submitted: | 2014-06-19 21:33 (UTC) |
Last Updated: | 2024-09-15 20:40 (UTC) |
« First ‹ Previous 1 .. 16 17 18 19 20 21 22 23 24 25 26 .. 131 Next › Last »
oops, bash_history indicates I forgot to unset MESA_WHICH_LLVM before running makepkg --printsrcinfo .
I'll correct it tomorrow.
Seems like llvm-minimal-git is now the hardcoded default. This increases compilation time dramatically.
MESA_WHICH_LLVM=4 can be used as enviroment variable to keep using the one with extra repo.
This is not supported by AUR helpers so users of those would need to add mesa-git to IgnorePkg and build manually.
Yup, that patch is no longer needed.
remove 0002-gallivm-llvm17-deleted-includefiles.patch
from source= array and run updpkgsums (comes with pacman-contrib) before building until the package is updated.
Looks like one of the patches is busted...
Applying patch 0002-gallivm-llvm17-deleted-includefiles.patch... patching file src/gallium/auxiliary/gallivm/lp_bld_init.c Hunk #1 FAILED at 42. 1 out of 1 hunk FAILED -- saving rejects to file src/gallium/auxiliary/gallivm/lp_bld_init.c.rej ==> ERROR: A failure occurred in prepare(). Aborting...
Looks like this commit yesterday b0rked the patch: https://gitlab.freedesktop.org/mesa/mesa/-/commit/9ba416cdc67073cdda9a73fe9d37304b82bdd526
@Billli11, virtio-experimental is changed to virtio.
@matrikslee, directx-headers 1.610 is now available in [extra].
@Lone_Wolf
virtio-experimental
has been changed to virtio
in vulkan-drivers
(merge_requests: 22547)
Please update.
@Lone_Wolf: Thanks, I had a suspicion that clang was breaking the package build. Thanks for explicitly pointing that out:)
@th3_f0x : you appear to be building with clang and the lld linker.
This package is only tested with (archlinux default) gcc & ld .
You did follow https://wiki.archlinux.org/title/Clang#Generic_setup ?
Hi, what could this problem be and how can I fix it? I am using llvm-git - LLVM - 17
[2579/2595] Linking target src/gallium/targets/omx/libomx_mesa.so
FAILED: src/gallium/targets/omx/libomx_mesa.so
clang++ -o src/gallium/targets/omx/libomx_mesa.so src/gallium/targets/omx/libomx_mesa.so.p/target.c.o -Wl,--as-needed -Wl,--no-undefined -fuse-ld=lld -shared -fPIC -Wl,--start-group -Wl,-soname,libomx_mesa.so -Wl,--whole-archive src/gallium/frontends/omx/libomx_st.a -Wl,--no-whole-archive -Wl,-O3,--sort-common,--as-needed,-z,relro,-z,now -flto=auto -march=native -mtune=native -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -flto=auto src/gallium/auxiliary/libgalliumvlwinsys.a src/util/libmesa_util.a src/util/format/libmesa_format.a src/util/libmesa_util_sse41.a src/util/blake3/libblake3.a src/c11/impl/libmesa_util_c11.a src/gallium/auxiliary/libgalliumvl.a src/gallium/auxiliary/libgallium.a src/compiler/nir/libnir.a src/compiler/libcompiler.a src/gallium/auxiliary/pipe-loader/libpipe_loader_static.a src/loader/libloader.a src/util/libxmlconfig.a src/gallium/winsys/sw/null/libws_null.a src/gallium/winsys/sw/wrapper/libwsw.a src/gallium/winsys/sw/dri/libswdri.a src/gallium/winsys/sw/kms-dri/libswkmsdri.a src/gallium/drivers/r600/libr600.a src/mesa/libmesa.a src/compiler/glsl/libglsl.a src/compiler/glsl/glcpp/libglcpp.a src/mesa/libmesa_sse41.a src/gallium/winsys/radeon/drm/libradeonwinsys.a src/gallium/drivers/radeonsi/libradeonsi_gfx6.a src/gallium/drivers/radeonsi/libradeonsi_gfx7.a src/gallium/drivers/radeonsi/libradeonsi_gfx8.a src/gallium/drivers/radeonsi/libradeonsi_gfx9.a src/gallium/drivers/radeonsi/libradeonsi_gfx10.a src/gallium/drivers/radeonsi/libradeonsi_gfx103.a src/gallium/drivers/radeonsi/libradeonsi_gfx11.a src/gallium/drivers/radeonsi/libradeonsi.a src/gallium/winsys/amdgpu/drm/libamdgpuwinsys.a src/amd/addrlib/libaddrlib.a src/amd/common/libamd_common.a src/amd/llvm/libamd_common_llvm.a src/gallium/winsys/nouveau/drm/libnouveauwinsys.a src/nouveau/codegen/libnouveau_codegen.a src/gallium/drivers/nouveau/libnouveau.a -Wl,--version-script /home/th3_fox/mesa-git/src/mesa/src/gallium/targets/omx/omx.sym -Wl,--gc-sections /usr/lib/libz.so -pthread -lm /usr/lib/libzstd.so /usr/lib/libunwind.so /usr/lib/libdrm.so /usr/lib/libxcb-sync.so /usr/lib/libxcb-present.so /usr/lib/libxshmfence.so /usr/lib/libxcb-xfixes.so /usr/lib/libxcb-dri3.so -lLLVM-17 -lsensors /usr/lib/libexpat.so /usr/lib/libdrm_radeon.so /usr/lib/libelf.so -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 /usr/lib/libdrm_amdgpu.so -lLLVM-17 /usr/lib/libdrm_nouveau.so /usr/lib/libomxil-bellagio.so /usr/lib/libX11-xcb.so /usr/lib/libX11.so /usr/lib/libxcb.so /usr/lib/libxcb-dri2.so -Wl,--end-group
ld.lld: error: version script assignment of 'global' to symbol 'OMX_ComponentInit' failed: symbol not defined
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
---------------------------
[2582/2595] Linking target src/gallium/targets/dri/libgallium_dri.so
FAILED: src/gallium/targets/dri/libgallium_dri.so
clang++ -o src/gallium/targets/dri/libgallium_dri.so src/gallium/targets/dri/libgallium_dri.so.p/target.c.o -Wl,--as-needed -Wl,--no-undefined -fuse-ld=lld -shared -fPIC -Wl,--start-group -Wl,-soname,libgallium_dri.so -Wl,-O3,--sort-common,--as-needed,-z,relro,-z,now -flto=auto -march=native -mtune=native -O3 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=2 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -Wp,-D_GLIBCXX_ASSERTIONS -flto=auto '-Wl,-rpath,$ORIGIN/../../../mapi/shared-glapi' -Wl,-rpath-link,/home/th3_fox/mesa-git/src/_build/src/mapi/shared-glapi src/gallium/frontends/dri/libdri.a src/util/libmesa_util.a src/util/format/libmesa_format.a src/util/libmesa_util_sse41.a src/util/blake3/libblake3.a src/c11/impl/libmesa_util_c11.a src/mesa/libmesa.a src/compiler/glsl/libglsl.a src/compiler/glsl/glcpp/libglcpp.a src/compiler/nir/libnir.a src/compiler/libcompiler.a src/mesa/libmesa_sse41.a src/gallium/auxiliary/libgalliumvl.a src/gallium/auxiliary/libgallium.a src/mapi/shared-glapi/libglapi.so.0.0.0 src/gallium/auxiliary/pipe-loader/libpipe_loader_static.a src/loader/libloader.a src/util/libxmlconfig.a src/gallium/winsys/sw/null/libws_null.a src/gallium/winsys/sw/wrapper/libwsw.a src/gallium/winsys/sw/dri/libswdri.a src/gallium/winsys/sw/kms-dri/libswkmsdri.a src/gallium/drivers/llvmpipe/libllvmpipe.a src/gallium/drivers/softpipe/libsoftpipe.a src/gallium/drivers/r300/libr300.a src/gallium/winsys/radeon/drm/libradeonwinsys.a src/gallium/drivers/r600/libr600.a src/gallium/drivers/radeonsi/libradeonsi_gfx6.a src/gallium/drivers/radeonsi/libradeonsi_gfx7.a src/gallium/drivers/radeonsi/libradeonsi_gfx8.a src/gallium/drivers/radeonsi/libradeonsi_gfx9.a src/gallium/drivers/radeonsi/libradeonsi_gfx10.a src/gallium/drivers/radeonsi/libradeonsi_gfx103.a src/gallium/drivers/radeonsi/libradeonsi_gfx11.a src/gallium/drivers/radeonsi/libradeonsi.a src/gallium/winsys/amdgpu/drm/libamdgpuwinsys.a src/amd/addrlib/libaddrlib.a src/amd/common/libamd_common.a src/amd/llvm/libamd_common_llvm.a src/gallium/winsys/nouveau/drm/libnouveauwinsys.a src/nouveau/codegen/libnouveau_codegen.a src/gallium/drivers/nouveau/libnouveau.a src/gallium/drivers/i915/libi915.a src/gallium/winsys/i915/drm/libi915drm.a src/intel/common/libintel_common.a src/intel/isl/libisl.a src/intel/isl/libisl_per_hw_ver40.a src/intel/dev/libintel_dev.a src/intel/isl/libisl_per_hw_ver50.a src/intel/isl/libisl_per_hw_ver60.a src/intel/isl/libisl_per_hw_ver70.a src/intel/isl/libisl_per_hw_ver75.a src/intel/isl/libisl_per_hw_ver80.a src/intel/isl/libisl_per_hw_ver90.a src/intel/isl/libisl_per_hw_ver110.a src/intel/isl/libisl_per_hw_ver120.a src/intel/isl/libisl_per_hw_ver125.a src/intel/isl/libisl_tiled_memcpy.a src/intel/isl/libisl_tiled_memcpy_sse41.a src/gallium/drivers/svga/libsvga.a src/gallium/winsys/svga/drm/libsvgadrm.a src/gallium/drivers/virgl/libvirgl.a src/gallium/winsys/virgl/drm/libvirgldrm.a src/gallium/winsys/virgl/common/libvirglcommon.a src/gallium/winsys/virgl/vtest/libvirglvtest.a src/gallium/drivers/iris/libiris.a src/gallium/drivers/iris/libiris_per_hw_ver80.a src/gallium/drivers/iris/libiris_per_hw_ver90.a src/gallium/drivers/iris/libiris_per_hw_ver110.a src/gallium/drivers/iris/libiris_per_hw_ver120.a src/gallium/drivers/iris/libiris_per_hw_ver125.a src/intel/compiler/libintel_compiler.a src/intel/blorp/libblorp.a src/intel/perf/libintel_perf.a src/intel/ds/libintel-driver-ds.a src/gallium/winsys/iris/drm/libiriswinsys.a src/gallium/drivers/zink/libzink.a src/vulkan/util/libvulkan_util.a src/gallium/drivers/d3d12/libd3d12.a src/microsoft/compiler/libdxil_compiler.a src/gallium/drivers/crocus/libcrocus.a src/gallium/drivers/crocus/libcrocus_per_hw_ver40.a src/gallium/drivers/crocus/libcrocus_per_hw_ver45.a src/gallium/drivers/crocus/libcrocus_per_hw_ver50.a src/gallium/drivers/crocus/libcrocus_per_hw_ver60.a src/gallium/drivers/crocus/libcrocus_per_hw_ver70.a src/gallium/drivers/crocus/libcrocus_per_hw_ver75.a src/gallium/drivers/crocus/libcrocus_per_hw_ver80.a src/gallium/winsys/crocus/drm/libcrocuswinsys.a -Wl,--build-id=sha1 -Wl,--gc-sections -Wl,--version-script /home/th3_fox/mesa-git/src/mesa/src/gallium/targets/dri/dri.sym -Wl,--dynamic-list /home/th3_fox/mesa-git/src/mesa/src/gallium/targets/dri/../dri-vdpau.dyn /usr/lib/libdrm.so -lLLVM-17 -pthread /usr/lib/libexpat.so /usr/lib/libz.so -lm /usr/lib/libzstd.so /usr/lib/libunwind.so -lLLVM-17 -lsensors -lLLVM-17 /usr/lib/libdrm_radeon.so -lLLVM-17 /usr/lib/libelf.so -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 -lLLVM-17 /usr/lib/libdrm_amdgpu.so -lLLVM-17 /usr/lib/libdrm_nouveau.so /usr/lib/libdrm_intel.so /usr/lib/libxcb.so /usr/lib/libX11-xcb.so /usr/lib/libX11.so /usr/lib/libxcb-dri3.so /usr/lib/libxcb-present.so /usr/lib/libxcb-xfixes.so /usr/lib/libxcb-sync.so /usr/lib/libxcb-randr.so /usr/lib/libxcb-shm.so /usr/lib/libxshmfence.so /usr/lib/libwayland-client.so /usr/lib/libXrandr.so /usr/lib/libd3dx12-format-properties.a /usr/lib/libDirectX-Guids.a -Wl,--end-group
ld.lld: error: version script assignment of 'global' to symbol '__driDriverExtensions' failed: symbol not defined
ld.lld: error: version script assignment of 'global' to symbol 'fd_drm_screen_create_renderonly' failed: symbol not defined
clang++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
Anyone building mesa-git
with -D vulkan-drivers=microsoft-experimental
(Dozen
driver provides Vulkan
on top of Direct3D12
, D3D12
dxgkrnl
kernel driver available mainly on WSL2
):
you need rmdir --ignore-fail-on-non-empty "${pkgdir}/usr/bin"
instead of rmdir "${pkgdir}/usr/bin"
, or your build will fail on package()
,
because in this build case "${pkgdir}/usr/bin"
contains spirv2dxil
.
diff --git a/PKGBUILD b/PKGBUILD
index 7e67928..4419f0b 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -126,7 +126,7 @@ build () {
-D b_lto=false \
-D platforms=x11,wayland \
-D gallium-drivers=r300,r600,radeonsi,nouveau,virgl,svga,swrast,i915,iris,crocus,zink,d3d12 \
- -D vulkan-drivers=amd,intel,swrast,virtio-experimental,intel_hasvk \
+ -D vulkan-drivers=amd,intel,swrast,virtio-experimental,intel_hasvk,microsoft-experimental \
-D vulkan-layers=device-select,overlay \
-D dri3=enabled \
-D egl=enabled \
@@ -168,7 +168,7 @@ package() {
# remove script file from /usr/bin
# https://gitlab.freedesktop.org/mesa/mesa/issues/2230
rm "${pkgdir}/usr/bin/mesa-overlay-control.py"
- rmdir "${pkgdir}/usr/bin"
+ rmdir --ignore-fail-on-non-empty "${pkgdir}/usr/bin"
# indirect rendering
ln -s /usr/lib/libGLX_mesa.so.0 "${pkgdir}/usr/lib/libGLX_indirect.so.0"
Pinned Comments
Lone_Wolf commented on 2024-09-10 19:58 (UTC)
removed obsolete options, build now works again.
building opencl clover is disabled for now, see https://gitlab.freedesktop.org/mesa/mesa/-/issues/11863
Those that need opencl should use rusticl instead. Note that rusticl at runtime is disabled by default, see https://docs.mesa3d.org/envvars.html#rusticl-environment-variables for info about enabling it.
Lone_Wolf commented on 2020-04-23 12:26 (UTC) (edited on 2023-03-30 07:04 (UTC) by Lone_Wolf)
Mesa and llvm are closely tied together. Everytime the llvm mesa is built against changes/updates , mesa needs to be rebuilt.
I expect anyone building mesa-git against one of the llvm trunk variants to be able to do that themselves, but atleast some of the people that built against repo llvm don't understand how to deal with such a rebuild.
The rest of this post is meant for those people.
Option A - best one
see https://wiki.archlinux.org/index.php/DeveloperWiki:Building_in_a_clean_chroot for the official way or https://aur.archlinux.org/packages/clean-chroot-manager for an alternative method.
Option B - 2nd best
Lone_Wolf commented on 2019-07-09 13:43 (UTC) (edited on 2023-04-18 10:41 (UTC) by Lone_Wolf)
WARNING : aur helpers don't support this method at all. They check .SRCINFO and that doesn't include this variable so it will use the default which is hardcoded to build against repo llvm.
Why would I want to use llvm development versions ?
Lone_Wolf commented on 2018-01-30 14:06 (UTC) (edited on 2023-02-12 11:56 (UTC) by Lone_Wolf)
run pacman Syu update non-repo packages for llvm if you use them
build mesa-git, log out , update mesa-git and restart X .
run
glxinfo -B
to verify basic OpenGL functionalitybuild lib32-mesa-git
run
glxinfo32 -B
to verify basic OpenGL functionality for multilib programs