New submission from pogo11 <[email protected]>:

I am trying to compile gst-ffmpeg from the git repository, which are GStreamer
plugins using ffmpeg (revision 23623).

Compilation of the file libavcodec/x86/dsputil_mmx.c fails with the following
error message :

gcc -I. -I"/home/mabis2/gstreamer/gst-ffmpeg/gst-libs/ext/ffmpeg"
-D_ISOC99_SOURCE -D_POSIX_C_SOURCE=200112 -D_FILE_OFFSET_BITS=64
-D_LARGEFILE_SOURCE -DPIC -DHAVE_AV_CONFIG_H -std=c99 -fomit-frame-pointer -fPIC
-g -Wdeclaration-after-statement -Wall -Wno-switch -Wdisabled-optimization
-Wpointer-arith -Wredundant-decls -Wno-pointer-sign -Wcast-qual -Wwrite-strings
-Wtype-limits -Wundef -Wmissing-prototypes -O3 -fno-math-errno -fno-signed-zeros
-fno-tree-vectorize -Werror=implicit -Werror=missing-prototypes         -MMD -MF
libavcodec/x86/dsputil_mmx.d -MT libavcodec/x86/dsputil_mmx.o -c -o
libavcodec/x86/dsputil_mmx.o libavcodec/x86/dsputil_mmx.c
libavcodec/x86/h264dsp_mmx.c: In function 'h264_h_loop_filter_luma_mmx2':
libavcodec/x86/dsputil_mmx.c:727: error: can't find a register in class
'GENERAL_REGS' while reloading 'asm'
libavcodec/x86/dsputil_mmx.c:727: error: can't find a register in class
'GENERAL_REGS' while reloading 'asm'
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/h264dsp_mmx.c:633: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/h264dsp_mmx.c:633: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
libavcodec/x86/dsputil_mmx.c:727: error: 'asm' operand has impossible 
constraints
make[5]: *** [libavcodec/x86/dsputil_mmx.o] Error 1

The problem is reproducible with the trunk version of ffmpeg by using the
following line to compile :

./configure --extra-cflags=-DPIC && make

The file doesn't compile properly because the definition of the assembly macros
depend on the definition of the PIC flag.

It is probably related to GCC version.  In my case, gcc --version gives "gcc
(Gentoo 4.3.2-r3 p1.6, pie-10.1.5) 4.3.2"

The related bug in GStreamer database is
https://bugzilla.gnome.org/show_bug.cgi?id=624148

----------
messages: 11195
priority: normal
status: new
substatus: new
title: Compilation error of inline assembly in dsputil_mmx.c
type: bug

________________________________________________
FFmpeg issue tracker <[email protected]>
<https://roundup.ffmpeg.org/issue2088>
________________________________________________

Reply via email to