Edit: I finally got it to work after a prompting session with Claude. Seems there is an incompatibility using --flto=auto along with gcc 16.1.1's libstdc++.a static archive (results in COMDAT/LTO errors). This causes the linkers (I tried lld/wild/mold -which is what I use in /etc/makepkg.conf) to break. You have to comment out
-static-libgcc -static-libstdc++
in libdxvk's meson.build file and then recompile locally with
makepkg --noextract -si
This is probably just me (seeing as no one else has reported problems), but be grateful for any help to resolve this error I'm running into:
[320/320] Linking target src/d3d8/libdxvk_d3d8.so.0.30000
FAILED: [code=1] src/d3d8/libdxvk_d3d8.so.0.30000
c++ -o src/d3d8/libdxvk_d3d8.so.0.30000 src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_buffer.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_device.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_interface.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_main.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_multithread.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_options.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_shader.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_state_block.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_surface.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_swapchain.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_texture.cpp.o src/d3d8/libdxvk_d3d8.so.0.30000.p/d3d8_volume.cpp.o -Wl,--as-needed -Wl,--no-undefined -shared -fPIC -Wl,-soname,libdxvk_d3d8.so.0 -Wl,--build-id -static-libgcc -static-libstdc++ -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -Wl,-z,pack-relative-relocs -fuse-ld=mold -flto=auto -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wp,-D_GLIBCXX_ASSERTIONS -flto=auto '-Wl,-rpath,$ORIGIN/../d3d9' -Wl,--start-group src/d3d9/libdxvk_d3d9.so.0.30000 src/util/libutil.a subprojects/dxbc-spirv/libdxbc_spv.a src/dxvk/libdxvk.a src/spirv/libspirv.a src/wsi/libwsi.a subprojects/libdisplay-info/libdisplay-info.a src/vulkan/libvkcommon.a -Wl,--version-script /home/chief/.cache/yay/libdxvk/src/libdxvk/src/d3d8/d3d8.sym -pthread -ldl -lm -Wl,--end-group
mold: error: /usr/lib/libstdc++.a(fs_path.o):(.text._ZNSt23_Sp_counted_ptr_inplaceINSt10filesystem7__cxx1116filesystem_error5_ImplESaIS3_ELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info): std::_Sp_make_shared_tag::_S_ti()::__tag refers to a discarded COMDAT section probably due to an ODR violation
mold: error: /usr/lib/libstdc++.a(fs_path.o):(.text._ZNKSt12__shared_ptrIKNSt10filesystem7__cxx1116filesystem_error5_ImplELN9__gnu_cxx12_Lock_policyE2EE14_M_get_deleterERKSt9type_info): std::_Sp_make_shared_tag::_S_ti()::__tag refers to a discarded COMDAT section probably due to an ODR violation
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
Aborting...
-> error making: libdxvk-exit status 4
-> Failed to install the following packages. Manual intervention is required:
libdxvk - exit status 4
Pinned Comments