[FFmpeg-trac] #2659(build system:new): Compiling for i386 on 64bit OSX is hard

FFmpeg trac at avcodec.org
Tue Jun 11 23:15:17 CEST 2013


#2659: Compiling for i386 on 64bit OSX is hard
-------------------------------------+-------------------------------------
             Reporter:  hendrik      |                    Owner:
                 Type:  defect       |                   Status:  new
             Priority:  normal       |                Component:  build
              Version:  git-master   |  system
             Keywords:  i386 OSX     |               Resolution:
  Darwin                             |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------

Comment (by hendrik):

 Sorry for being unclear.

 The answer is: No. It depends on the used compiler.

 `./configure --enable-shared --disable-static --arch=i386 --cc="gcc -m32"`
 also leads to
 {{{
 CC      libavcodec/h264_cabac.o
 cc1: error in backend: Ran out of registers during register allocation!
 make: *** [libavcodec/h264_cabac.o] Error 1
 }}}

 `./configure --enable-shared --disable-static --arch=i386 --cc="clang
 -m32"`
 works.

 But
 `./configure --enable-shared --disable-static --arch=i386 --cc="clang
 -m32" --enable-small`
 leads to
 {{{
 CC      libavcodec/h264_cabac.o
 In file included from libavcodec/h264_cabac.c:43:
 libavcodec/x86/h264_i386.h:137:9: error: ran out of registers during
 register allocation
         "mov %1, %6                             \n\t"
         ^
 }}}

 But in any case, whoever attempts to build ffmpeg for i386 on OSX has to
 know, that `--arch=i386` is ignored. AFAIK, this is not documented
 anywhere that's easily accessible. And probably it shouldn't be ignored to
 begin with.

 One apparently has to specify `--cc` somehow to get this to build for i386
 at all.
 And when you do, some things still don't work. That's what makes it
 ''hard'', as in: it takes a few hours to achieve a working result.

 Thank you for looking into this.

-- 
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2659#comment:3>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list