Posts: 15
Joined: Feb 2008
Reputation:
0
2008-02-27, 21:35
This is slightly off thread but it regards how you guys have managed to build FFmpeg (trunk) on OS X.
With XCode 3.0 on OS X 10.5.1, I get the dreaded:
i386/cavsdsp_mmx.c:447: error: can't find a register in class
'GENERAL_REGS' while reloading 'asm'
make[1]: *** [i386/cavsdsp_mmx.o] Error 1
make: *** [lib] Error 2
From looking at SVN, I can see you have the ffmpeg libraries precompiled and checked in. I assume this is because you needed to use a different tool chain?
I assume you haven't configured without mmx... Any help would be appreciated!
Posts: 499
Joined: May 2007
Reputation:
1
d4rk
Team-XBMC Developer
Posts: 499
This works for me, with trunk ffmpeg (in a terminal, not Xcode)
./configure --prefix=/opt/local/ --enable-liba52 --enable-swscaler --enable-avfilter --disable-mmx --enable-libmp3lame --enable-gpl --extra-cflags="-I/opt/local/include" --extra-ldflags="-L/opt/local/lib"
assuming of course you have all the required dependencies (ports).
Posts: 499
Joined: May 2007
Reputation:
1
d4rk
Team-XBMC Developer
Posts: 499
Which Makefile?
Maybe Elan will chip in since he's the one who actually compiled it. I don't know if MMX is enabled or not. Based on r11434, it's possible that it is.
Posts: 15
Joined: Feb 2008
Reputation:
0
Thanks B4tm4n, unfortunately, the guide also disables mmx.
Sorry, I meant the config.mak (referenced by the Makefile) in
linuxport/docs/sources/dvdplayer/ffmpeg/ffmpeg (after untarring) has the following set:
ARCH_X86=yes
ARCH_X86_32=yes
HAVE_MMX=yes
HAVE_SSSE3=yes
Which seems to agree with the following line in the build_xbmc.sh file:
./configure --extra-cflags=-D_XBOX --enable-shared --enable-pp --enable-memalign-hack --enable-gpl --disable-static --disable-vhook --disable-en
coders --enable-swscaler
I have made some progress, in building the object files but build_xbmc.sh can't seem to build the shared library. Although, that might not be too much of a problem, since I'm after static libraries... I'll keep at it.
Posts: 499
Joined: May 2007
Reputation:
1
d4rk
Team-XBMC Developer
Posts: 499
build_xbmc.sh is used for compiling it under Linux, Elan hasn't checked in any ffmpeg source, so he's probably using vanilla trunk with the cabac patch and compiling it with the ./configure script. That config.mak doesn't mean anything for OSX.
P.S. - the cabac patch is purely for optimizing h264 performance and has nothing to do with getting it to compile.
Posts: 278
Joined: Dec 2007
Reputation:
5
elan
Senior Member
Posts: 278
I'm using trunk (or at least close to trunk), with assembly turned on, the cabac patch and the xbmc subtitles patch. I used the Perian project as a starter for how to build the ffmpeg libraries. Building statically was the key.
-elan
Posts: 1
Joined: Dec 2009
Reputation:
0
Hi all, Can anyone has configured FFMPEG for XCode 3.1.4 ?
Thanks
Pratik