[FFmpeg-devel] [PATCH] lavu: always provide symbols from hwcontext_vulkan.h
Andreas Rheinhardt
andreas.rheinhardt at outlook.com
Tue Jul 5 20:16:44 EEST 2022
Michael Niedermayer:
> On Tue, Jul 05, 2022 at 02:11:01AM +0200, Niklas Haas wrote:
>> From: Niklas Haas <git at haasn.dev>
>>
>> This header is unconditionally installed, even though the utility
>> functions defined by it may be missing from the built library.
>>
>> A precedent set by e.g. libavcodec/qsv.h (and others) is to always
>> provide these functions by compiling stub functions in the absence of
>> CONFIG_*. Make hwcontext_vulkan.h match this convention.
>>
>> Fixes downstream issues, e.g.
>> https://github.com/haasn/libplacebo/issues/120
>>
>> Signed-off-by: Niklas Haas <git at haasn.dev>
>> ---
>> libavutil/Makefile | 2 +-
>> libavutil/hwcontext_vulkan.c | 26 ++++++++++++++++++++++++--
>> 2 files changed, 25 insertions(+), 3 deletions(-)
>
> breaks build with shared libs
>
> LD libavutil/libavutil.so.57
> libavutil/hwcontext_vulkan.o: In function `av_vk_frame_alloc':
> ffmpeg/linux64shared/src/libavutil/hwcontext_vulkan.c:4177: multiple definition of `av_vk_frame_alloc'
> libavutil/hwcontext_stub.o:ffmpeg/linux64shared/src/libavutil/hwcontext_stub.c:37: first defined here
> libavutil/hwcontext_vulkan.o: In function `av_vkfmt_from_pixfmt':
> ffmpeg/linux64shared/src/libavutil/hwcontext_vulkan.c:4182: multiple definition of `av_vkfmt_from_pixfmt'
> libavutil/hwcontext_stub.o:ffmpeg/linux64shared/src/libavutil/hwcontext_stub.c:32: first defined here
> clang: error: linker command failed with exit code 1 (use -v to see invocation)
> ffmpeg/ffbuild/library.mak:118: recipe for target 'libavutil/libavutil.so.57' failed
> make: *** [libavutil/libavutil.so.57] Error 1
>
>
This commit has been superseded by
f9dd8fcf9b87e757096de993dd32571c4a85a2cb (which fixes the issue in a
different way and together with this patch causes the issue you
encountered).
- Andreas
More information about the ffmpeg-devel
mailing list