[FFmpeg-devel] [PATCH] avcodec/videotoolbox: Fix undefined symbol with minimal configuration

lance.lmwang at gmail.com lance.lmwang at gmail.com
Tue Jan 4 11:43:13 EET 2022


From: Limin Wang <lance.lmwang at gmail.com>

Please reproduced with the following minimal configure command:
./configure --enable-shared --disable-all --enable-avcodec --enable-decoder=h264 --enable-hwaccel=h264_videotoolbox

You'll get below error:

Undefined symbols for architecture x86_64:
  "_ff_videotoolbox_vpcc_extradata_create", referenced from:
      _videotoolbox_start in videotoolbox.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Reported-by: Cameron Gutman <aicommander at gmail.com>
Signed-off-by: Limin Wang <lance.lmwang at gmail.com>
---
 libavcodec/videotoolbox.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/libavcodec/videotoolbox.c b/libavcodec/videotoolbox.c
index 69beb38..51d4eac 100644
--- a/libavcodec/videotoolbox.c
+++ b/libavcodec/videotoolbox.c
@@ -825,11 +825,13 @@ static CFDictionaryRef videotoolbox_decoder_config_create(CMVideoCodecType codec
         if (data)
             CFDictionarySetValue(avc_info, CFSTR("hvcC"), data);
         break;
+#if CONFIG_VP9_VIDEOTOOLBOX_HWACCEL
     case kCMVideoCodecType_VP9 :
         data = ff_videotoolbox_vpcc_extradata_create(avctx);
         if (data)
             CFDictionarySetValue(avc_info, CFSTR("vpcC"), data);
         break;
+#endif
     default:
         break;
     }
-- 
1.8.3.1



More information about the ffmpeg-devel mailing list