[mythtv] patching for gcc 3.3: upgrade to ffmpeg 0.4.6 needed

ramon.roca at xcombo.com ramon.roca at xcombo.com
Sun Apr 27 20:19:38 EDT 2003


Building a new box I gave a chance to the new SuSE 8.2, that comes now with a gcc 3.3
When doing the make, it gives an error at ffmpeg dirs (MC/libs/libavcodec).
The error is like that:

gcc -c -pipe -O2 -march=i586 -mcpu=i686 -fmessage-length=0 -fPIC -DNO_DEBUG -w -O3 -DHAVE_AV_CONFIG_H -I.. -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -D_REENTRANT  -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -DPREFIX=\"/usr/local\" -DMMX -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -I/usr/lib/qt3/mkspecs/default -I. -I../.. -I../../../../../../../../include -I/usr/lib/qt3/include -o msmpeg4.o msmpeg4.c
common.h: In function `msmpeg4_pred_dc':
msmpeg4.c:736: error: can't find a register in class `BREG' while reloading `asm'
msmpeg4.c:736: error: can't find a register in class `BREG' while reloading `asm'
make[2]: *** [msmpeg4.o] Error 1
make[2]: Leaving directory `/usr/local/src/xcombo/CVS/mythtv/MC/libs/libavcodec.mc'
make[1]: *** [sub-libavcodec] Error 2
make[1]: Leaving directory `/usr/local/src/xcombo/CVS/mythtv/MC/libs'
make: *** [sub-libs] Error 2

Investigating that, I've got the impression that rather a gcc bug, that could be a program bug while using asm inlines, so I've just went to the ffmpeg site, download their latest verion (0.4.6) to see what happens and then it compiled successfully.
So then, I've changed the current CVS objects by the ones that comes with the new 0.4.6, that forced to me to make also a few changes in other parts of the source. That was at MC/libs/libmythtv/avformatdecoder.cpp. There I had to comment the references to the startpos member of a struct (looks is not longer there), change the frame_rate_base references to a constant FRAME_RATE_BASE and change the reference to CODEC_ID_H264 to CODEC_ID_H263.

I did this just to be able to compile, but honestly I'm not really aware of what I've done. I just know that now it compiles and works beautifully, however I just want to post that in case that someone else gets into the same trouble once it uses gcc 3.3, and, of course, let someone who really knows about that commits those changes if they are ok, and what I believe the most important, I 've got the impression that the CVS needs to upgrade to the 0.4.6 of ffmpeg since really looks necessary for the latest gcc versions.

Ramon.
  


-------------- next part --------------
An HTML attachment was scrubbed...
URL: /pipermail/attachments/20030427/e901adc4/attachment.htm


More information about the mythtv-dev mailing list