[FFmpeg-trac] #1565(avfilter:new): ffmpeg-0.10.3 fails to build on x32 ABI
FFmpeg
trac at avcodec.org
Sat Jul 21 17:15:07 CEST 2012
#1565: ffmpeg-0.10.3 fails to build on x32 ABI
-------------------------------------+-------------------------------------
Reporter: devsk | Type: defect
Status: new | Priority: normal
Component: avfilter | Version:
Keywords: x32 new ABI | unspecified
Blocking: | Blocked By:
Analyzed by developer: 0 | Reproduced by developer: 0
-------------------------------------+-------------------------------------
Summary of the bug: ffmpeg-0.10.3 fails to build on x32 ABI
How to reproduce:
{{{
emerge -v ffmpeg
CC libavfilter/libmpcodecs/vf_pullup.o
libavfilter/libmpcodecs/vf_ilpack.c: Assembler messages:
libavfilter/libmpcodecs/vf_ilpack.c:116: Error: operand type mismatch for
`push'
libavfilter/libmpcodecs/vf_ilpack.c:195: Error: operand type mismatch for
`pop'
libavfilter/libmpcodecs/vf_ilpack.c:224: Error: operand type mismatch for
`push'
libavfilter/libmpcodecs/vf_ilpack.c:307: Error: operand type mismatch for
`pop'
make: *** [libavfilter/libmpcodecs/vf_ilpack.o] Error 1
make: *** Waiting for unfinished jobs....
CC libavfilter/libmpcodecs/vf_qp.o
libavfilter/libmpcodecs/vf_mcdeint.c: In function 'config':
libavfilter/libmpcodecs/vf_mcdeint.c:199:13: warning:
'avcodec_alloc_context' is deprecated (declared at
./libavcodec/avcodec.h:4025) [-Wdeprecated-declarations]
libavfilter/libmpcodecs/vf_mcdeint.c:227:13: warning: 'avcodec_open' is
deprecated (declared at ./libavcodec/avcodec.h:4155) [-Wdeprecated-
declarations]
* ERROR: media-video/ffmpeg-0.10.3 failed (compile phase):
* emake failed
Line 116 from libavfilter/libmpcodecs/vf_ilpack.c:
#if HAVE_EBX_AVAILABLE
static void pack_li_0_MMX(unsigned char *dst, unsigned char *y,
unsigned char *u, unsigned char *v, int w, int us, int vs)
{
__asm__ volatile (""
"push %%"REG_BP" \n\t"
REG_BP defined in ./libavutil/x86_cpu.h:
#if ARCH_X86_64
...
# define REG_SP "rsp"
# define REG_BP "rbp"
...
#elif ARCH_X86_32
...
# define REG_SP "esp"
# define REG_BP "ebp"
...
#else
typedef int x86_reg;
The question is: is it hard to provide support for the new x32 ABI which
is now supported in kernel 3.4.x, glibc-2.16, gcc-4.7.1, binutils-2.22?
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1565>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list