[MEncoder-users] mcdeint=2 segfault
R.L. Horn
lists at eastcheap.org
Sun Apr 12 09:14:59 CEST 2009
On Sun, 12 Apr 2009, vmrsss wrote:
> On 10 Apr 2009, at 20:56, Christian Ebert wrote:
>> 'd love to try it, but:
>>
>> cc -Wundef -Wdisabled-optimization -Wno-pointer-sign
>> -Wdeclaration-after-statement -std=gnu99 -mdynamic-no-pic -falign-loops=16
>> -shared-libgcc -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
>> -D_LARGEFILE64_SOURCE -I. -I/usr/local/include -I/sw/include
>> -I/usr/X11/include -I/usr/local/include -I/sw/include/freetype2
>> -I/sw/include -I/sw/include -I/usr/local/include
>> -I/usr/local/include/libdvdread -c -o liba52/imdct.o liba52/imdct.c
>> In file included from liba52/imdct.c:725:
>> liba52/imdct_3dnow.h: In function 'fft_asmb_3dnow':
>> liba52/imdct_3dnow.h:257: error: can't find a register in class
>> 'GENERAL_REGS' while reloading 'asm'
>> make: *** [liba52/imdct.o] Error 1
>
> I had the same problem. This is because the CFLAGS set in configure for
> Darwin have changed recently: adding back "-O4 -fomit-frame-pointer" worked
> for me.
Looking at this a little harder, it does appear that you definitely need
an -O option (which one, apart from -O0, doesn't seem to matter).
Without it, I couldn't get imdct.c to compile with any version of gcc I
have on hand. I believe they all tend to imply -fomit-frame-pointer, but
that alone isn't sufficient (or, evidently, even necessary):
$(CC) -I. -O -c -o liba52/imdct.o liba52/imdct.c works
$(CC) -I. -O -fno-omit-frame-pointer -c -o liba52/imdct.o liba52/imdct.c
works
$(CC) -I. -c -o liba52/imdct.o liba52/imdct.c doesn't work
$(CC) -I. -fomit-frame-pointer -c -o liba52/imdct.o liba52/imdct.c
doesn't work
More information about the MEncoder-users
mailing list