[FFmpeg-user] Error when cross-compiling to x86 with gcc5.1

Bernd Kuhls bernd.kuhls at t-online.de
Fri Jun 19 21:01:38 CEST 2015


Hi,

using buildroot a compile error occurs when trying to cross compile ffmpeg 
2.6.3 and 2.7 to x86:

CC      libavcodec/h264_cabac.o
In file included from libavcodec/cabac_functions.h:46:0,
                 from libavcodec/h264_cabac.c:37:
libavcodec/h264_cabac.c: In function 'ff_h264_decode_mb_cabac':
libavcodec/x86/cabac.h:192:5: error: 'asm' operand has impossible 
constraints
     __asm__ volatile(
     ^

Used compiler

$ uname -a
Linux fli4lbuild64 3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u1 x86_64 
GNU/Linux

$ LC_ALL=C output/host/usr/bin/i586-buildroot-linux-uclibc-gcc -v
Using built-in specs.
COLLECT_GCC=output/host/usr/bin/i586-buildroot-linux-uclibc-gcc
COLLECT_LTO_WRAPPER=/home/fli4l/br9_gcc5/output/host/usr/libexec/gcc/i586-
buildroot-linux-uclibc/5.1.0/lto-wrapper
Target: i586-buildroot-linux-uclibc
Configured with: ./configure --prefix=/home/fli4l/br9_gcc5/output/host/usr 
--sysconfdir=/home/fli4l/br9_gcc5/output/host/etc --enable-static --
target=i586-buildroot-linux-uclibc --with-sysroot=/home/fli4l/br9
_gcc5/output/host/usr/i586-buildroot-linux-uclibc/sysroot --disable-
__cxa_atexit --with-gnu-ld --disable-libssp --disable-multilib --with-
gmp=/home/fli4l/br9_gcc5/output/host/usr --with-mpfr=/home/fli4l/br9
_gcc5/output/host/usr --with-pkgversion='Buildroot 2015.08-git-00249-
g3ba86f7' --with-bugurl=http://bugs.buildroot.net/ --enable-target-optspace 
--disable-libquadmath --disable-libsanitizer --enable-tls --disable-
libmudflap --enable-threads --with-mpc=/home/fli4l/br9_gcc5/output/host/usr 
--without-isl --without-cloog --disable-decimal-float --with-arch=i586 --
enable-languages=c --enable-poison-system-directories --with-build-time-
tools=/home/fli4l/br9_gcc5/output/host/usr/i586-buildroot-linux-uclibc/bin 
--enable-shared --disable-libgomp
Thread model: posix
gcc version 5.1.0 (Buildroot 2015.08-git-00249-g3ba86f7)

Configure parameters:

./configure --enable-cross-compile --cross-prefix=/home/fli4l/br9
_gcc5/output/host/usr/bin/i586-buildroot-linux-uclibc- --
sysroot=/home/fli4l/br9_gcc5/output/host/usr/i586-buildroot-linux-
uclibc/sysroot --host-cc="/usr/bin/gcc" --arch="i586" --target-
os="linux" --disable-stripping --pkg-config="/home/fli4l/br9
_gcc5/output/host/usr/bin/pkg-config" --disable-static --enable-shared --
prefix=/usr --enable-avfilter --disable-version3 --enable-logging --enable-
optimizations --disable-extra-warnings --enable-avdevice --enable-avcodec 
--enable-avformat --disable-x11grab --enable-network --disable-gray --
enable-swscale-alpha --disable-small --enable-dct --enable-fft --enable-
mdct --enable-rdft --disable-crystalhd --disable-vdpau --disable-dxva2 --
enable-runtime-cpudetect --disable-hardcoded-tables --disable-memalign-hack 
--enable-hwaccels --disable-avisynth --disable-frei0r --disable-
libopencore-amrnb --disable-libopencore-amrwb --disable-libopencv --
disable-libdc1394 --disable-libfaac --disable-libgsm --disable-libmp3lame 
--disable-libnut --disable-libopenjpeg --disable-librtmp --disable-
libschroedinger --disable-libspeex --disable-libtheora --disable-libvo-
aacenc --disable-libvo-amrwbenc --disable-symver --disable-doc --enable-gpl 
--enable-nonfree --enable-ffmpeg --enable-ffplay --enable-ffserver --
enable-avresample --enable-ffprobe --enable-postproc --enable-swscale --
enable-indevs --enable-outdevs --enable-pthreads --disable-zlib --disable-
bzlib --disable-openssl --disable-vaapi --disable-libopus --disable-libvpx 
--disable-libfreetype --disable-fontconfig --disable-libx264 --disable-yasm 
--disable-mmx --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 
--disable-sse4 --disable-sse42 --disable-avx --disable-avx2 --disable-armv6 
--disable-armv6t2 --disable-vfp --enable-mipsfpu --disable-mips32r2 --
disable-mipsdspr1 --disable-mipsdspr2 --disable-altivec --enable-pic  --
cpu="i586"

Adding --disable-inline-asm as configure parameter fixes the error. Is this 
the right solution?

Regards, Bernd



More information about the ffmpeg-user mailing list