Opened 8 months ago

Closed 3 months ago

#10548 closed defect (fixed)

Link error when compiling ffmpeg with clang and enabling lto

Reported by: arm64-v9a Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords:
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

Summary of the bug:
How to reproduce:

./configure --cross-prefix=x86_64-w64-mingw32- --cc=x86_64-w64-mingw32-clang --enable-lto=thin --arch=x86_64 --target-os=mingw32 --enable-cross-compile

This problem also occurs in termux aarch64 builds.

ld.lld: error: undefined symbol: ff_mlp_firorder_0
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_1
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_2
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_3
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_4
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_5
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_6
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_7
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_8
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_0
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_1
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_2
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_3
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_4
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)
ld.lld: error: undefined symbol: ff_mlp_firorder_0
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)
ld.lld: error: undefined symbol: ff_mlp_firorder_0
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_1
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_1
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_2
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_2
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_3
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_3
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_4
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_4
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_5
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_5
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_6
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_6
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_7
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_7
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_8
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_firorder_8
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_0
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_0
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_1
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_1
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_2
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_2
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_3
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_3
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_4
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)

ld.lld: error: undefined symbol: ff_mlp_iirorder_4
>>> referenced by src/libavcodec/x86/mlpdsp_init.c
>>>               libavcodec.a(mlpdsp_init.o)
clang-16: error: linker command failed with exit code 1 (use -v to see invocation)

Change History (3)

comment:3 by Balling, 3 months ago

Resolution: fixed
Status: newclosed

Finally fixed in 102045028ee57967973ea90acac41eb747d3c601, please notify mpv people.

Note: See TracTickets for help on using tickets.