[FFmpeg-devel] [PATCH] broken build with --disable-optimizations

Måns Rullgård mans
Mon Jan 18 15:01:11 CET 2010

Jai Menon <jmenon86 at gmail.com> writes:

> On Sun, Jan 17, 2010 at 10:06:17PM +0100, Michael Niedermayer wrote:
>> On Mon, Jan 18, 2010 at 01:11:40AM +0530, Jai Menon wrote:
>> > Hi,
>> > 
>> > Attached patch fixes it. This probably isn't correct and is just meant to be an indicator of what the issue is.
>> Could you show me the error message with which it fails?
> here you go :
> /home/jai/ffbuild/libavcodec/libavcodec.a(h264.o): In function
> `decode_significance_8x8_x86':
> /home/jai/ffmpeg/libavcodec/x86/h264_i386.h:97: undefined reference to
> `last_coeff_flag_offset_8x8'

The problem is all those non-inline functions in h264*.h.  There is
absolutely no sense whatsoever in having a non-inline function in a
header file.  Either the function should be inlined or it should not.
In the former case it should be marked inline explicitly, in the
latter it should be in a .c file.  Having multiple copies of
non-inline functions in the object code is obviously a bad thing.

Michael, if this is a work in progress and you're experimenting with
inlining, say so and that's fine.  If you do not intend for these
functions to be inlined, please move them to .c files.

M?ns Rullg?rd
mans at mansr.com

More information about the ffmpeg-devel mailing list