[FFmpeg-trac] #8277(undetermined:new): i686 build target fails test on x86_64 toolchain

FFmpeg trac at avcodec.org
Tue Oct 15 18:04:16 EEST 2019


#8277: i686 build target fails test on x86_64 toolchain
-------------------------------------+-------------------------------------
             Reporter:  kwizart      |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:               |                  Version:
  undetermined                       |  unspecified
             Keywords:               |               Blocked By:
             Blocking:               |  Reproduced by developer:  0
Analyzed by developer:  0            |
-------------------------------------+-------------------------------------
 Summary of the bug: Building for x86 32bit fails using a x86_64 gcc
 toolchain
 How to reproduce:
 {{{

 I'm trying to build ffmpeg for x86 32bit using the following flags:
 --arch=i686 --optflags='\''-O2 -g -pipe -Wall -Werror=format-security
 -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-
 protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-
 hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m32
 -march=i686 -mtune=generic -msse2 -mfpmath=sse -mstackrealign
 -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection'\''
 --extra-ldflags='\''-Wl,-z,relro -Wl,--as-needed  -Wl,-z,now
 -specs=/usr/lib/rpm/redhat/redhat-hardened-ld  '\'' --extra-cflags='\''
 '\'' -

 The compiler is x86_64 (on a Fedora 31 userspace).
 The needed devel packages are installed as i686 (specially glibc-
 devel.i686)

 Unfortunately the ./configure script is failing with:
 test_cc
 BEGIN /tmp/ffconf.i01hvFDS/test.c
     1   int main(void){ return 0; }
 END /tmp/ffconf.i01hvFDS/test.c
 gcc -march=i686 -c -o /tmp/ffconf.i01hvFDS/test.o
 /tmp/ffconf.i01hvFDS/test.c
 cc1: error: CPU you selected does not support x86-64 instruction set
 C compiler test failed.

 This is because the configure test is not passing the -m32 flag while
 testing to produce a binary.
 Using -m32 on the compilation line allows to produce a valid test.o
 }}}

--
Ticket URL: <https://trac.ffmpeg.org/ticket/8277>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list