The file libavcodec/x86/mlpdsp_init.c uses inline assembly with nonlocal labels that are referenced outside of the assembly in C. This fails to link with LTO when built with Clang when targeting Windows.
The root cause has been reported upstream at https://github.com/llvm/llvm-project/issues/76046. Fixes: https://trac.ffmpeg.org/ticket/10548 --- configure | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/configure b/configure index 7742ea4ba2..b4f7c2de66 100755 --- a/configure +++ b/configure @@ -7372,6 +7372,16 @@ if [ -n "$lto" ]; then check_cflags $lto check_ldflags $lto $cpuflags disable inline_asm_direct_symbol_refs + if test "$cc_type" = "clang"; then + # Clang's LTO fails on Windows, when there are references outside + # of inline assembly to nonlocal labels defined within inline assembly, + # see https://github.com/llvm/llvm-project/issues/76046. + case $target_os in + mingw32|win32) + disable inline_asm_nonlocal_labels + ;; + esac + fi fi enabled ftrapv && check_cflags -ftrapv -- 2.34.1 _______________________________________________ ffmpeg-devel mailing list ffmpeg-devel@ffmpeg.org https://ffmpeg.org/mailman/listinfo/ffmpeg-devel To unsubscribe, visit link above, or email ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".