Problem compiling ffmpeg for v9.5.3 client

I’ve been able to compile earlier versions but after my latest git pull to the latest 9.5.3 build, any time I try to run bootstrap.py --ffmpeg-cc=clang, I get the following error trying to compile ffmpeg:



<br />
CC	libavcodec/h264_cabac.o<br />
fatal error: error in backend: Ran out of registers during register allocation!<br />
make[2]: *** [libavcodec/h264_cabac.o] Error 1<br />
make[1]: *** [ffmpeg] Error 2<br />
make: *** [dvdpcodecs] Error 2<br />




I got around this issue in the past by forcing clang as the compiler for ffmpeg, but this doesn't seem to work now. Any ideas on how to get around this issue?

Generally that should only be the case if you’re compiling in debug mode, I think optimization fixes it, but it sounds like that make already be optimized :-/



The odd thing is that I don’t think clang gives that error, it looks like a gcc error?

I’m pretty sure debug is turned off. I also tried the following based off the configure-osx.sh script in xbmc/cores/dvdplayer/Codecs/ffmpeg:



<br />
./configure --extra-cflags='-m32 -I/Users/****/projects/plex/vendor/osx-10.6_i386/include -fPIC -DPIC -D_REENTRANT -isysroot /Developer/SDKs/MacOSX10.6.sdk -mmacosx-version-min=10.4 -DNDEBUG=1 -O2 -arch i386 -I/Users/****/projects/plex/vendor/osx-10.6_i386/include -Qunused-arguments -arch i386 -w -D_DARWIN_C_SOURCE -Dattribute_deprecated=' --cc=clang --extra-ldflags='-arch i386' --target-os=darwin --enable-cross-compile --disable-amd3dnow --disable-static --disable-debug --arch=i386 --disable-muxers --enable-muxer=spdif --enable-muxer=adts --disable-encoders --enable-encoder=ac3 --enable-encoder=aac --disable-libvorbis --disable-devices --disable-ffplay --disable-ffserver --disable-ffmpeg --enable-shared --disable-decoder=mpeg_xvmc --enable-postproc --enable-gpl --enable-protocol=http --enable-pthreads --enable-runtime-cpudetect<br />
<br />
make clean; make;<br />




Still the same result:


CC	libavcodec/h263dec.o<br />
CC	libavcodec/h264.o<br />
CC	libavcodec/h264_cabac.o<br />
fatal error: error in backend: Ran out of registers during register allocation!<br />
make: *** [libavcodec/h264_cabac.o] Error 1



v0.9.5.2 compiled fine for me under Lion/XCode 4.1.

Any ideas what else I could try?

Okay, here’s how I ultimately got things to build for my setup. Perhaps, this will be of help to someone else.



Me: running Lion 10.7.4 with MacPorts. I originally tried Xcode 4.2 using bootstrap.py --ffmpeg-cc=clang but repeatedly got the out of registers error shown above.



I downgraded to Xcode 4.1 and built with



bootstrap.py --ffmpeg-cc=gcc-4.2



And that did it work for me. My build release also had missing media for the MediaStream skin and I had to copy the Textures.xbt file from a good release.

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.