[FFmpeg-user] make error with libilbc enabling

Kimio Miyamura xanadu at apost.plala.or.jp
Fri Oct 3 09:56:17 CEST 2014


Hi, 

I get the following error while making ffmpeg with libilbc enabling:

Undefined symbols for architecture x86_64:
 "_WebRtcSpl_CrossCorrelation", referenced from:
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_MyCorr in libilbc.a(my_corr.o)
Undefined symbols for architecture x86_64:
 "_WebRtcSpl_CrossCorrelation", referenced from:
 "_WebRtcSpl_DownsampleFast", referenced from:
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_MyCorr in libilbc.a(my_corr.o)
Undefined symbols for architecture x86_64:
 "_WebRtcSpl_CrossCorrelation", referenced from:
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_MyCorr in libilbc.a(my_corr.o)
 "_WebRtcSpl_DownsampleFast", referenced from:
Undefined symbols for architecture x86_64:
 "_WebRtcSpl_CrossCorrelation", referenced from:
 "_WebRtcSpl_MaxAbsValueW16", referenced from:
 "_WebRtcSpl_DownsampleFast", referenced from:
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_EncodeImpl in libilbc.a(encode.o)
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_DoThePlc in libilbc.a(do_plc.o)
     _WebRtcIlbcfix_MyCorr in libilbc.a(my_corr.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
     _WebRtcIlbcfix_StateSearch in libilbc.a(state_search.o)
     _WebRtcIlbcfix_XcorrCoef in libilbc.a(xcorr_coef.o)
     ...
    (maybe you meant: _WebRtcSpl_MaxAbsValueW16C      _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
 "_WebRtcSpl_MaxAbsValueW16", referenced from:
)
 "_WebRtcSpl_MaxAbsValueW32", referenced from:
 "_WebRtcSpl_DownsampleFast", referenced from:
 "_WebRtcSpl_MaxAbsValueW16", referenced from:
     _WebRtcIlbcfix_EncodeImpl in libilbc.a(encode.o)
     _WebRtcIlbcfix_CbSearchCore in libilbc.a(cb_search_core.o)
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_DoThePlc in libilbc.a(do_plc.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
     _WebRtcIlbcfix_StateSearch in libilbc.a(state_search.o)
     _WebRtcIlbcfix_XcorrCoef in libilbc.a(xcorr_coef.o)
     ...
     _WebRtcIlbcfix_Refiner in libilbc.a(refiner.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_EncodeImpl in libilbc.a(encode.o)
    (maybe you meant: _WebRtcSpl_MaxAbsValueW32C      _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_DoThePlc in libilbc.a(do_plc.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
     _WebRtcIlbcfix_StateSearch in libilbc.a(state_search.o)
     _WebRtcIlbcfix_XcorrCoef in libilbc.a(xcorr_coef.o)
     ...
    (maybe you meant: _WebRtcSpl_MaxAbsValueW16C     (maybe you meant: _WebRtcSpl_MaxAbsValueW16C)
 "_WebRtcSpl_MaxValueW32", referenced from:
)
 "_WebRtcSpl_MaxAbsValueW32", referenced from:
 "_WebRtcSpl_MaxAbsValueW16", referenced from:
)
 "_WebRtcSpl_MaxAbsValueW32", referenced from:
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
     _WebRtcIlbcfix_EncodeImpl in libilbc.a(encode.o)
    (maybe you meant: _WebRtcSpl_MaxValueW32C      _WebRtcIlbcfix_CbSearchCore in libilbc.a(cb_search_core.o)
     _WebRtcIlbcfix_Refiner in libilbc.a(refiner.o)
     _WebRtcIlbcfix_CbSearch in libilbc.a(cb_search.o)
     _WebRtcIlbcfix_DoThePlc in libilbc.a(do_plc.o)
     _WebRtcIlbcfix_EnhancerInterface in libilbc.a(enhancer_interface.o)
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
     _WebRtcIlbcfix_StateSearch in libilbc.a(state_search.o)
     _WebRtcIlbcfix_XcorrCoef in libilbc.a(xcorr_coef.o)
     ...
    (maybe you meant: _WebRtcSpl_MaxAbsValueW32C      _WebRtcIlbcfix_CbSearchCore in libilbc.a(cb_search_core.o)
     _WebRtcIlbcfix_Refiner in libilbc.a(refiner.o)
    (maybe you meant: _WebRtcSpl_MaxAbsValueW32C     (maybe you meant: _WebRtcSpl_MaxAbsValueW16C)
)
 "_WebRtcSpl_MaxValueW32", referenced from:
)
 "_WebRtcSpl_MaxAbsValueW32", referenced from:
)
 "_WebRtcSpl_MaxValueW32", referenced from:
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
     _WebRtcIlbcfix_CbSearchCore in libilbc.a(cb_search_core.o)
    (maybe you meant: _WebRtcSpl_MaxValueW32C      _WebRtcIlbcfix_Refiner in libilbc.a(refiner.o)
    (maybe you meant: _WebRtcSpl_MaxAbsValueW32C      _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
    (maybe you meant: _WebRtcSpl_MaxValueW32C)
)
 "_WebRtcSpl_MaxValueW32", referenced from:
ld: symbol(s) not found for architecture x86_64
)
     _WebRtcIlbcfix_FrameClassify in libilbc.a(frame_classify.o)
    (maybe you meant: _WebRtcSpl_MaxValueW32C)
ld: symbol(s) not found for architecture x86_64
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [ffserver_g] Error 1
make: *** Waiting for unfinished jobs....
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [ffprobe_g] Error 1
make: *** [ffplay_g] Error 1
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [ffmpeg_g] Error 1

Even though ffmpeg's configure script does not report any error, I have no idea for this kind of error in make phase.  Please help me!!

My configure option is:
$ ./configure --prefix=/Volumes/ffmpeg_compile" --pkg-config-flags=--static --enable-libilbc

NOTE:
I know libilbc have updated on September 18th.  With this update, libilbc can not be built with cmake.  So I build it with the following procedure:

$ cd libilbc
$ libtoolize
$ aclocal -I m4
$ autoheader
$ automake -a -c
$ autoconf
Note that I build each auto tools with "./configure --prefix=/Volumes/ffmpeg_compile" option.

$ ./configure --prefix=/Volumes/ffmpeg_compile --disable-shared
$ make
$ make install


// Miya


More information about the ffmpeg-user mailing list