[Libav-user] Unable to compile i386 compatible ffmpeg dylibs on Mac OS X

Simon Daniels simondaniels23 at gmail.com
Wed Nov 23 07:41:11 CET 2011


Hi Carl,

Here's what I get with ./configure --disable-static --enable-shared
--disable-outdev=sdl --disable-bzlib --disable-libfreetype
--disable-libopenjpeg --enable-zlib --enable-runtime-cpudetect
--extra-cflags="-m32 -fomit-frame-pointer" --extra-ldflags="-m32
-fomit-frame-pointer" --cc="gcc -m32 -fomit-frame-pointer"

libavcodec/h264.c: In function ‘fill_filter_caches’:
libavcodec/h264.c:3224: warning: initialization from incompatible pointer type
libavcodec/h264.c:3301: warning: initialization from incompatible pointer type
libavcodec/h264.c:3316: warning: initialization from incompatible pointer type
CC	libavcodec/h264_cabac.o
cc1: error in backend: Ran out of registers during register allocation!
make: *** [libavcodec/h264_cabac.o] Error 1


Here is the uncut make V=1:

gcc -m32 -fomit-frame-pointer -I.
-I"/Users/user/Downloads/ffmpeg-0.8.7" -D_ISOC99_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DPIC -DHAVE_AV_CONFIG_H
-m32 -fomit-frame-pointer  -std=c99 -fomit-frame-pointer -fPIC -g
-Wdeclaration-after-statement -Wall -Wno-parentheses -Wno-switch
-Wdisabled-optimization -Wpointer-arith -Wredundant-decls
-Wno-pointer-sign -Wcast-qual -Wwrite-strings -Wundef
-Wmissing-prototypes -Wno-pointer-to-int-cast -O3 -fno-math-errno
-mllvm -stack-alignment=16  -MMD -MF libavcodec/h264_cabac.d -MT
libavcodec/h264_cabac.o -c -o libavcodec/h264_cabac.o
libavcodec/h264_cabac.c
cc1: error in backend: Ran out of registers during register allocation!
make: *** [libavcodec/h264_cabac.o] Error 1


When I ran only ./configure --cc="gcc -m32", I got this from make V=1

gcc -m32 -I. -I"/Users/user/Downloads/ffmpeg-0.8.7" -D_ISOC99_SOURCE
-D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -DHAVE_AV_CONFIG_H -std=c99
-mdynamic-no-pic -fomit-frame-pointer -g -Wdeclaration-after-statement
-Wall -Wno-parentheses -Wno-switch -Wdisabled-optimization
-Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual
-Wwrite-strings -Wundef -Wmissing-prototypes -Wno-pointer-to-int-cast
-O3 -fno-math-errno -mllvm -stack-alignment=16  -MMD -MF
libavcodec/h264_cabac.d -MT libavcodec/h264_cabac.o -c -o
libavcodec/h264_cabac.o libavcodec/h264_cabac.c
cc1: error in backend: Ran out of registers during register allocation!
make: *** [libavcodec/h264_cabac.o] Error 1




Thanks!


On Tue, Nov 22, 2011 at 4:54 PM, Carl Eugen Hoyos <cehoyos at ag.or.at> wrote:
> Simon Daniels <simondaniels23 at ...> writes:
>
>> I'm running 64-bit Lion but I need to compile a 32-bit version of
>> ffmpeg because another library I'm using is only available as 32-bit.
>> I've tried a number of different configurations but they're all giving
>> me errors. Here's what I've tried:
>>
>> ./configure --disable-static --enable-shared --disable-outdev=sdl
>> --disable-bzlib --disable-libfreetype --disable-libopenjpeg
>> --enable-zlib --enable-runtime-cpudetect --arch=i386
>> --extra-cflags="-arch i386" --extra-ldflags="-arch i386"
>> --target-os=darwin --enable-cross-compile
>
> What's wrong with "./configure --cc='gcc -m32'"?
> Or does this not work on OSX?
>
> If it still fails, please run make again, then run make V=1 and post the
> complete, uncut output of make V=1. (Please do not post the complete uncut
> output of your first call to make.)
>
> Carl Eugen
>
> _______________________________________________
> Libav-user mailing list
> Libav-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/libav-user
>


More information about the Libav-user mailing list