On 2/9/2018 12:21 PM, Muhammad Faiz wrote:
> On Fri, Feb 9, 2018 at 6:53 PM, James Almer <jamr...@gmail.com> wrote:
>> On 2/9/2018 7:56 AM, Muhammad Faiz wrote:
>>> On Thu, Feb 8, 2018 at 7:04 AM, Michael Niedermayer
>>> <mich...@niedermayer.cc> wrote:
>>>> On Wed, Feb 07, 2018 at 01:52:33PM +0100, Nicolas George wrote:
>>>>> Josh de Kock (2018-02-06):
>>>>>> ffmpeg | branch: master | Josh de Kock <j...@itanimul.li> | Fri Dec 22 
>>>>>> 22:17:00 2017 +0000| [7e8eba2d8755962d9dca5eade57bf8f591a73c0c] | 
>>>>>> committer: Josh de Kock
>>>>>>
>>>>>> lavc: add new API for iterating codecs and codec parsers
>>>>>>
>>>>>> Based on an unfinished patch by atomnuker.
>>>>
>>>> This commit also breaks
>>>>
>>>> ./configure --enable-libsoxr && make -j12 fate-checkasm
>>>>  make -j12 fate-checkasm
>>>>  ...
>>>> LD      tests/checkasm/checkasm
>>>> libswresample/libswresample.a(soxr_resample.o): In function 
>>>> `get_out_samples':
>>>> ffmpeg/libswresample/soxr_resample.c:118: undefined reference to 
>>>> `soxr_delay'
>>>> libswresample/libswresample.a(soxr_resample.o): In function `get_delay':
>>>> ffmpeg/libswresample/soxr_resample.c:100: undefined reference to 
>>>> `soxr_delay'
>>>> libswresample/libswresample.a(soxr_resample.o): In function `flush':
>>>> ffmpeg/libswresample/soxr_resample.c:70: undefined reference to 
>>>> `soxr_delay'
>>>> ffmpeg/libswresample/soxr_resample.c:72: undefined reference to 
>>>> `soxr_process'
>>>> ffmpeg/libswresample/soxr_resample.c:77: undefined reference to 
>>>> `soxr_process'
>>>> ffmpeg/libswresample/soxr_resample.c:78: undefined reference to 
>>>> `soxr_delay'
>>>> libswresample/libswresample.a(soxr_resample.o): In function `process':
>>>> ffmpeg/libswresample/soxr_resample.c:88: undefined reference to 
>>>> `soxr_set_num_channels'
>>>> ffmpeg/libswresample/soxr_resample.c:88: undefined reference to 
>>>> `soxr_set_error'
>>>> ffmpeg/libswresample/soxr_resample.c:90: undefined reference to 
>>>> `soxr_process'
>>>> libswresample/libswresample.a(soxr_resample.o): In function `destroy':
>>>> ffmpeg/libswresample/soxr_resample.c:65: undefined reference to 
>>>> `soxr_delete'
>>>> libswresample/libswresample.a(soxr_resample.o): In function `create':
>>>> ffmpeg/libswresample/soxr_resample.c:46: undefined reference to 
>>>> `soxr_io_spec'
>>>> ffmpeg/libswresample/soxr_resample.c:48: undefined reference to 
>>>> `soxr_quality_spec'
>>>> ffmpeg/libswresample/soxr_resample.c:56: undefined reference to 
>>>> `soxr_delete'
>>>> ffmpeg/libswresample/soxr_resample.c:57: undefined reference to 
>>>> `soxr_create'
>>>> collect2: error: ld returned 1 exit status
>>>> make: *** [tests/checkasm/checkasm] Error 1
>>>
>>> Fixed in 81d6501be77b273053a66eeced94d78e2021f1d1
>>>
>>> Thank's.
>>
>> This is not a proper solution. swr is pulled by avcodec only if Opus
>> decoder is enabled. There's no reason to hardcode it for checkasm otherwise.
>> The problem here is that the Makefile should pull all the dependencies
>> of its hardcoded dependencies. This is what FFLIBS and FFEXTRALIBS do in
>> common.mak to link the actual libraries.
> 
> Probably, this is not a proper solution, but it is trivial enough.
> (I'm sorry that I pushed it without posting).

It's a trivial change that does the job of fixing the regression, so
it's fine.

> So, please fix it with the proper solution. Probably, by adding
> swresample-extralibs to avcodec-extralibs when avcodec has dependency
> to swresample. I don't know how to do it.

I guess the best way is with Makefile magic, like i mentioned FFLIBS and
FFXEXTRALIBS do for each library.
I'll take a look at it later.

> 
>>
>> That said, was this really a regression generated by this commit? It
>> looks unrelated.
> 
> Actually, it was a bug even before this commit. Just, previously it
> was hidden because linker was smart enough to discard unneeded
> dependency. But now when the list is changed to array, the linker is
> unable to do it.
> 
> Thank's.
> _______________________________________________
> ffmpeg-devel mailing list
> ffmpeg-devel@ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-devel
> 

_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to