pcwalton / rust-media

A free, comprehensive, and portable video/audio streaming library for Rust
Apache License 2.0
787 stars 57 forks source link

Not compileable on ARM #43

Open Cokemonkey11 opened 5 years ago

Cokemonkey11 commented 5 years ago

On a raspberry pi 2:

error: failed to run custom build command for `libvpx-sys v0.1.0 (https://github.com/pcwalton/libvpx?branch=servo#3765856c)`
process didn't exit successfully: `/home/pi/rust-media/example/target/debug/build/libvpx-sys-dc1decce5e61498c/build-script-build` (exit code: 101)
--- stdout
echo "#ifndef VPX_CONFIG_H" > /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "%ifndef VPX_CONFIG_ASM" > /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "ARCH_X86_64=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
build/make/version.sh . /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_version.h
echo "#define VPX_CONFIG_H" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "%define VPX_CONFIG_ASM 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "CONFIG_POSTPROC=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#define ARCH_X86_64 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "CONFIG_VP9_POSTPROC=no" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#define CONFIG_POSTPROC 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "%define ARCH_ARM 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "CONFIG_ERROR_CONCEALMENT=no" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "%define CONFIG_POSTPROC 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "%define CONFIG_VP9_POSTPROC 0" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "#define CONFIG_VP9_POSTPROC 0" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "#define CONFIG_ERROR_CONCEALMENT 0" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "%define CONFIG_ERROR_CONCEALMENT 0" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "CONFIG_PIC=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#define CONFIG_PIC 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "%define CONFIG_PIC 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "#define CONFIG_SPATIAL_RESAMPLING yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "CONFIG_SPATIAL_RESAMPLING=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "%define CONFIG_SPATIAL_RESAMPLING yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "CONFIG_VP8_DECODER=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#define CONFIG_VP8_DECODER 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "HAVE_MMX=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "%define CONFIG_VP8_DECODER 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "#define HAVE_MMX 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "%endif" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.asm
echo "HAVE_PTHREAD_H=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#define HAVE_PTHREAD_H 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "#define HAVE_SSE2 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "HAVE_SSE2=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#define HAVE_SSSE3 1" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
echo "HAVE_SSSE3=yes" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config
echo "#endif" >> /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config.h
build/make/rtcd.pl --arch=x86 --sym=vp8_rtcd --config=/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config vp8/common/rtcd_defs.pl > /home/pi/rust-media/example/target/debug/build/libvpx-s
ys-21070317f7674d2a/out/vp8_rtcd.h
build/make/rtcd.pl --arch=x86 --sym=vp8_scale_rtcd --config=/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_config vpx_scale/vpx_scale_rtcd.pl > /home/pi/rust-media/example/target/debug/buil
d/libvpx-sys-21070317f7674d2a/out/vpx_scale_rtcd.h
mkdir -p `dirname /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/generic/systemdependent.o` && cc -c -iquote /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2
a/out -iquote . -DINLINE=inline -O2 -fPIC -o /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/generic/systemdependent.o vp8/common/generic/systemdependent.c
mkdir -p `dirname /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/alloccommon.o` && cc -c -iquote /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out -iquot
e . -DINLINE=inline -O2 -fPIC -o /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/alloccommon.o vp8/common/alloccommon.c
mkdir -p `dirname /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/blockd.o` && cc -c -iquote /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out -iquote . -
DINLINE=inline -O2 -fPIC -o /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/blockd.o vp8/common/blockd.c
mkdir -p `dirname /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/debugmodes.o` && cc -c -iquote /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out -iquote
 . -DINLINE=inline -O2 -fPIC -o /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/debugmodes.o vp8/common/debugmodes.c
mkdir -p `dirname /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/dequantize.o` && cc -c -iquote /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out -iquote
 . -DINLINE=inline -O2 -fPIC -o /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/dequantize.o vp8/common/dequantize.c
mkdir -p `dirname /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/entropy.o` && cc -c -iquote /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out -iquote .
-DINLINE=inline -O2 -fPIC -o /home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/entropy.o vp8/common/entropy.c
/home/pi/.cargo/git/checkouts/libvpx-914eb21fbf3a6389/3765856/makefile.cargo:295: recipe for target '/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/generic/systemdependent.o' failed

--- stderr
/home/pi/.cargo/git/checkouts/libvpx-914eb21fbf3a6389/3765856/makefile.cargo:286: warning: overriding recipe for target '/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8_rtcd.h'
/home/pi/.cargo/git/checkouts/libvpx-914eb21fbf3a6389/3765856/makefile.cargo:280: warning: ignoring old recipe for target '/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8_rtcd.h'
/home/pi/.cargo/git/checkouts/libvpx-914eb21fbf3a6389/3765856/makefile.cargo:289: warning: overriding recipe for target '/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_scale_rtcd.h'
/home/pi/.cargo/git/checkouts/libvpx-914eb21fbf3a6389/3765856/makefile.cargo:283: warning: ignoring old recipe for target '/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vpx_scale_rtcd.h'
In file included from vp8/common/generic/systemdependent.c:17:0:
vp8/common/generic/systemdependent.c: In function ‘vp8_machine_specific_config’:
./vpx_ports/x86.h:44:3: error: impossible constraint in ‘asm’
   __asm__ __volatile__ (\
   ^
./vpx_ports/x86.h:171:3: note: in expansion of macro ‘cpuid’
   cpuid(0, 0, reg_eax, reg_ebx, reg_ecx, reg_edx);
   ^
./vpx_ports/x86.h:44:3: error: impossible constraint in ‘asm’
   __asm__ __volatile__ (\
   ^
./vpx_ports/x86.h:177:3: note: in expansion of macro ‘cpuid’
   cpuid(1, 0, reg_eax, reg_ebx, reg_ecx, reg_edx);
   ^
make: *** [/home/pi/rust-media/example/target/debug/build/libvpx-sys-21070317f7674d2a/out/vp8/common/generic/systemdependent.o] Error 1
make: *** Waiting for unfinished jobs....
thread 'main' panicked at 'assertion failed: make_result.success()', /home/pi/.cargo/git/checkouts/libvpx-914eb21fbf3a6389/3765856/build.rs:20:5