Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't build on Raspberry Pi 4 #1

Open
jens1o opened this issue Dec 15, 2019 · 6 comments
Open

Can't build on Raspberry Pi 4 #1

jens1o opened this issue Dec 15, 2019 · 6 comments

Comments

@jens1o
Copy link

jens1o commented Dec 15, 2019


pi@raspberrypi:~/rust-ffmpeg $ RUST_BACKTRACE=full cargo build
   Compiling ffmpeg-dev v0.3.7
error: failed to run custom build command for `ffmpeg-dev v0.3.7`

Caused by:
  process didn't exit successfully: `/home/pi/rust-ffmpeg/target/debug/build/ffmpeg-dev-9e731ab85a8ee3a6/build-script-build` (exit code: 101)
--- stderr
thread 'main' panicked at 'assertion failed: result.status.success()', /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/ffmpeg-dev-0.3.7/build.rs:292:13
stack backtrace:
   0:   0xaf40d0 - backtrace::backtrace::libunwind::trace::hda41dbcdfba36aa0
                       at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/libunwind.rs:88
   1:   0xaf40d0 - backtrace::backtrace::trace_unsynchronized::h24db1eb743e32b7a
                       at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.37/src/backtrace/mod.rs:66
   2:   0xaf40d0 - std::sys_common::backtrace::_print_fmt::h0ecd5de0be695bc9
                       at src/libstd/sys_common/backtrace.rs:76
   3:   0xaf40d0 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hf24f776311cdf529
                       at src/libstd/sys_common/backtrace.rs:60
   4:   0xb135d8 - core::fmt::write::h01edf6dd68a42c9c
                       at src/libcore/fmt/mod.rs:1030
   5:   0xaefa04 - std::io::Write::write_fmt::ha096f698ec4136ad
                       at src/libstd/io/mod.rs:1412
   6:   0xaf6620 - std::sys_common::backtrace::_print::h4b33c71a5db06ff0
                       at src/libstd/sys_common/backtrace.rs:64
   7:   0xaf6620 - std::sys_common::backtrace::print::h690a5e4a78826230
                       at src/libstd/sys_common/backtrace.rs:49
   8:   0xaf6620 - std::panicking::default_hook::{{closure}}::h9252dff4eab26d22
                       at src/libstd/panicking.rs:196
   9:   0xaf6260 - std::panicking::default_hook::hf5f567043bc78ff4
                       at src/libstd/panicking.rs:210
  10:   0xaf6d20 - std::panicking::rust_panic_with_hook::h9a662f58cf3f8ffe
                       at src/libstd/panicking.rs:473
  11:   0x518d0c - std::panicking::begin_panic::h268d833d957d2adf
                       at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/panicking.rs:407
  12:   0x4e04d0 - build_script_build::build::h44ca87797125b727
                       at /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/ffmpeg-dev-0.3.7/build.rs:292
  13:   0x4e2120 - build_script_build::main::hebec4c61000db4e4
                       at /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/ffmpeg-dev-0.3.7/build.rs:384
  14:   0x4e4368 - std::rt::lang_start::{{closure}}::h994adea77f38d3d4
                       at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/rt.rs:64
  15:   0xaf6790 - std::rt::lang_start_internal::{{closure}}::h480a8a74e6250ca9
                       at src/libstd/rt.rs:49
  16:   0xaf6790 - std::panicking::try::do_call::haa8fa7e95b273461
                       at src/libstd/panicking.rs:292
  17:   0xafdad8 - __rust_maybe_catch_panic
                       at src/libpanic_unwind/lib.rs:80
  18:   0xaf7198 - std::panicking::try::h7df0be55a6fa36e5
                       at src/libstd/panicking.rs:271
  19:   0xaf7198 - std::panic::catch_unwind::h4bd88ca4b117b223
                       at src/libstd/panic.rs:394
  20:   0xaf7198 - std::rt::lang_start_internal::h7d3aa0ed326f9560
                       at src/libstd/rt.rs:48
  21:   0x4e4338 - std::rt::lang_start::h101599b2e6607018
                       at /rustc/4560ea788cb760f0a34127156c78e2552949f734/src/libstd/rt.rs:64
  22:   0x4e2228 - main
  23: 0xb6d98718 - __libc_start_main

crashes here:

ffmpeg-dev-rs/build.rs

Lines 282 to 293 in 3b382ce

{
let mut cpu_number = num_cpus::get();
let result = std::process::Command::new("make")
.arg("-C")
.arg(&source_path)
.arg("-f")
.arg("Makefile")
.arg(&format!("-j{}", cpu_number))
.output()
.expect(&format!("make -C {:?} failed", source_path));
assert!(result.status.success());
}

--

How can I troubleshoot this?

@colbyn
Copy link
Member

colbyn commented Dec 16, 2019

It's definitely an issue with running make. At that point its trying to build the FFmpeg C source code (FFmpeg version 4.2, at commit 2722fc2).

Hmm, it should really be showing the make output log when it fails. I just published a new version (0.3.8) to crates that should show the stdout/stderr output when it fails to compile.

First, do you have make installed?

If not, please retry building ffmpeg-dev with my latest changes so we can see the stdout/stderr log from the make subprocess.

@jens1o
Copy link
Author

jens1o commented Dec 24, 2019

I'll do that tomorrow. Thanks for your help! :)

@jens1o
Copy link
Author

jens1o commented Feb 16, 2020

I'm sorry for coming back so late, but it is not working after an update and I'm out of my latin (German saying).

pi@raspberrypi:~/rust-ffmpeg $ cargo clean --verbose
    Removing /home/pi/rust-ffmpeg/target
pi@raspberrypi:~/rust-ffmpeg $ cargo build
    Updating crates.io index
  Downloaded ffmpeg-dev v0.3.8
   Compiling libc v0.2.66
   Compiling memchr v2.2.1
   Compiling cfg-if v0.1.10
   Compiling glob v0.3.0
   Compiling version_check v0.1.5
   Compiling cc v1.0.48
   Compiling byteorder v1.3.2
   Compiling log v0.4.8
   Compiling lazy_static v1.4.0
   Compiling bitflags v1.2.1
   Compiling proc-macro2 v1.0.6
   Compiling unicode-xid v0.2.0
   Compiling quick-error v1.2.2
   Compiling regex-syntax v0.6.12
   Compiling crc32fast v1.2.0
   Compiling unicode-width v0.1.7
   Compiling vec_map v0.8.1
   Compiling adler32 v1.0.4
   Compiling strsim v0.8.0
   Compiling ansi_term v0.11.0
   Compiling termcolor v1.0.5
   Compiling bindgen v0.51.1
   Compiling shlex v0.1.1
   Compiling peeking_take_while v0.1.2
   Compiling nom v4.2.3
   Compiling thread_local v0.3.6
   Compiling clang-sys v0.28.1
   Compiling humantime v1.3.0
   Compiling textwrap v0.11.0
   Compiling miniz_oxide v0.3.5
   Compiling libloading v0.5.2
   Compiling aho-corasick v0.7.6
   Compiling atty v0.2.13
   Compiling xattr v0.2.2
   Compiling filetime v0.2.8
   Compiling which v3.1.0
   Compiling num_cpus v1.11.1
   Compiling flate2 v1.0.13
   Compiling rustc-hash v1.0.1
   Compiling quote v1.0.2
   Compiling clap v2.33.0
   Compiling regex v1.3.1
   Compiling cexpr v0.3.6
   Compiling tar v0.4.26
   Compiling env_logger v0.6.2
   Compiling ffmpeg-dev v0.3.8
error: failed to run custom build command for `ffmpeg-dev v0.3.8`

Caused by:
  process didn't exit successfully: `/home/pi/rust-ffmpeg/target/debug/build/ffmpeg-dev-0dae708ec95c4e17/build-script-build` (exit code: 101)
--- stderr
thread 'main' panicked at 'make failed:
* stderr:
libavdevice/avdevice.c: In function ‘device_next’:
libavdevice/avdevice.c:88:13: warning: ‘av_oformat_next’ is deprecated [-Wdeprecated-declarations]
             if (!(prev = av_oformat_next(prev)))
             ^~
In file included from libavdevice/avdevice.h:51,
                 from libavdevice/avdevice.c:23:
./libavformat/avformat.h:2095:17: note: declared here
 AVOutputFormat *av_oformat_next(const AVOutputFormat *f);
                 ^~~~~~~~~~~~~~~
libavdevice/avdevice.c:92:13: warning: ‘av_iformat_next’ is deprecated [-Wdeprecated-declarations]
             if (!(prev = av_iformat_next(prev)))
             ^~
In file included from libavdevice/avdevice.h:51,
                 from libavdevice/avdevice.c:23:
./libavformat/avformat.h:2087:17: note: declared here
 AVInputFormat  *av_iformat_next(const AVInputFormat  *f);
                 ^~~~~~~~~~~~~~~
libavdevice/v4l2.c: In function ‘v4l2_get_device_list’:
libavdevice/v4l2.c:1054:58: warning: ‘%s’ directive output may be truncated writing up to 255 bytes into a region of size 251 [-Wformat-truncation=]
         snprintf(device_name, sizeof(device_name), "/dev/%s", entry->d_name);
                                                          ^~
libavdevice/v4l2.c:1054:9: note: ‘snprintf’ output between 6 and 261 bytes into a destination of size 256
         snprintf(device_name, sizeof(device_name), "/dev/%s", entry->d_name);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
libavfilter/avfiltergraph.c: In function ‘avfilter_graph_free’:
libavfilter/avfiltergraph.c:135:5: warning: ‘resample_lavr_opts’ is deprecated [-Wdeprecated-declarations]
     av_freep(&(*graph)->resample_lavr_opts);
     ^~~~~~~~
In file included from libavfilter/avfiltergraph.c:39:
libavfilter/avfilter.h:847:32: note: declared here
     attribute_deprecated char *resample_lavr_opts;   ///< libavresample options to use for the auto-inserted resample filters
                                ^~~~~~~~~~~~~~~~~~
In file included from ./libavutil/intmath.h:30,
                 from ./libavutil/common.h:106,
                 from ./libavutil/avutil.h:296,
                 from ./libavutil/avassert.h:31,
                 from libavfilter/colorspacedsp_template.c:21,
                 from libavfilter/colorspacedsp.c:31:
./libavutil/arm/intmath.h: In function ‘rgb2yuv_444p10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: error: impossible constraint in ‘asm’
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: error: impossible constraint in ‘asm’
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: error: impossible constraint in ‘asm’
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_fsb_444p10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_444p8to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_444p10to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_444p12to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_444p12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_fsb_444p12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_444p8to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_444p10to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_444p12to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_422p10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_fsb_422p10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_422p8to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_422p10to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_422p12to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_422p12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_fsb_422p12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_422p8to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_422p10to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_422p12to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_420p10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_fsb_420p10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_420p8to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_420p10to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_420p12to10_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_420p12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘rgb2yuv_fsb_420p12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_420p8to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_420p10to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h: In function ‘yuv2yuv_420p12to12_c’:
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
./libavutil/arm/intmath.h:77:5: warning: asm operand 2 probably doesn’t match constraints
     __asm__ ("usat %0, %2, %1" : "=r"(x) : "r"(a), "i"(p));
     ^~~~~~~
make: *** [ffbuild/common.mak:59: libavfilter/colorspacedsp.o] Error 1
make: *** Waiting for unfinished jobs....


* stdout:
make: Entering directory '/home/pi/rust-ffmpeg/target/debug/build/ffmpeg-dev-df8521fdb8050729/out/FFmpeg-FFmpeg-2722fc2'
GEN     libavutil/libavutil.version
GEN     libswscale/libswscale.version
GEN     libswresample/libswresample.version
GEN     libavcodec/libavcodec.version
GEN     libavformat/libavformat.version
GEN     libavfilter/libavfilter.version
GEN     libavdevice/libavdevice.version
CC      libavdevice/alldevices.o
CC      libavdevice/avdevice.o
CC      libavdevice/fbdev_common.o
CC      libavdevice/fbdev_dec.o
CC      libavdevice/fbdev_enc.o
CC      libavdevice/lavfi.o
CC      libavdevice/oss.o
CC      libavdevice/oss_dec.o
CC      libavdevice/oss_enc.o
CC      libavdevice/timefilter.o
CC      libavdevice/utils.o
CC      libavdevice/v4l2-common.o
CC      libavdevice/v4l2.o
CC      libavdevice/v4l2enc.o
GEN     libavdevice/libavdevice.pc
CC      libavfilter/aeval.o
CC      libavfilter/af_acontrast.o
CC      libavfilter/af_acopy.o
CC      libavfilter/af_acrossover.o
CC      libavfilter/af_acrusher.o
CC      libavfilter/af_adeclick.o
CC      libavfilter/af_adelay.o
CC      libavfilter/af_aderivative.o
CC      libavfilter/af_aecho.o
CC      libavfilter/af_aemphasis.o
CC      libavfilter/af_afade.o
CC      libavfilter/af_afftdn.o
CC      libavfilter/af_afftfilt.o
CC      libavfilter/af_afir.o
CC      libavfilter/af_aformat.o
CC      libavfilter/af_agate.o
CC      libavfilter/af_aiir.o
CC      libavfilter/af_alimiter.o
CC      libavfilter/af_amerge.o
CC      libavfilter/af_amix.o
CC      libavfilter/af_amultiply.o
CC      libavfilter/af_anequalizer.o
CC      libavfilter/af_anlmdn.o
CC      libavfilter/af_anull.o
CC      libavfilter/af_apad.o
CC      libavfilter/af_aphaser.o
CC      libavfilter/af_apulsator.o
CC      libavfilter/af_aresample.o
CC      libavfilter/af_asetnsamples.o
CC      libavfilter/af_asetrate.o
CC      libavfilter/af_ashowinfo.o
CC      libavfilter/af_asoftclip.o
CC      libavfilter/af_astats.o
CC      libavfilter/af_atempo.o
CC      libavfilter/af_biquads.o
CC      libavfilter/af_channelmap.o
CC      libavfilter/af_channelsplit.o
CC      libavfilter/af_chorus.o
CC      libavfilter/af_compand.o
CC      libavfilter/af_compensationdelay.o
CC      libavfilter/af_crossfeed.o
CC      libavfilter/af_crystalizer.o
CC      libavfilter/af_dcshift.o
CC      libavfilter/af_deesser.o
CC      libavfilter/af_drmeter.o
CC      libavfilter/af_dynaudnorm.o
CC      libavfilter/af_earwax.o
CC      libavfilter/af_extrastereo.o
CC      libavfilter/af_firequalizer.o
CC      libavfilter/af_flanger.o
CC      libavfilter/af_haas.o
CC      libavfilter/af_hdcd.o
CC      libavfilter/af_headphone.o
CC      libavfilter/af_join.o
CC      libavfilter/af_loudnorm.o
CC      libavfilter/af_mcompand.o
CC      libavfilter/af_pan.o
CC      libavfilter/af_replaygain.o
CC      libavfilter/af_sidechaincompress.o
CC      libavfilter/af_silencedetect.o
CC      libavfilter/af_silenceremove.o
CC      libavfilter/af_stereotools.o
CC      libavfilter/af_stereowiden.o
CC      libavfilter/af_surround.o
CC      libavfilter/af_superequalizer.o
CC      libavfilter/af_tremolo.o
CC      libavfilter/af_vibrato.o
CC      libavfilter/af_volume.o
CC      libavfilter/af_volumedetect.o
CC      libavfilter/allfilters.o
CC      libavfilter/asink_anullsink.o
CC      libavfilter/asrc_anoisesrc.o
CC      libavfilter/asrc_anullsrc.o
CC      libavfilter/asrc_hilbert.o
CC      libavfilter/asrc_sinc.o
CC      libavfilter/asrc_sine.o
CC      libavfilter/audio.o
CC      libavfilter/avf_abitscope.o
CC      libavfilter/avf_ahistogram.o
CC      libavfilter/avf_aphasemeter.o
CC      libavfilter/avf_avectorscope.o
CC      libavfilter/avf_concat.o
CC      libavfilter/avf_showcqt.o
CC      libavfilter/avf_showfreqs.o
CC      libavfilter/avf_showspatial.o
CC      libavfilter/avf_showspectrum.o
CC      libavfilter/avf_showvolume.o
CC      libavfilter/avf_showwaves.o
CC      libavfilter/avfilter.o
CC      libavfilter/avfiltergraph.o
CC      libavfilter/bbox.o
CC      libavfilter/buffersink.o
CC      libavfilter/buffersrc.o
CC      libavfilter/colorspace.o
CC      libavfilter/colorspacedsp.o
CC      libavfilter/dnn_backend_native.o
CC      libavfilter/dnn_interface.o
CC      libavfilter/drawutils.o
CC      libavfilter/ebur128.o
CC      libavfilter/f_bench.o
CC      libavfilter/f_cue.o
CC      libavfilter/f_drawgraph.o
make: Leaving directory '/home/pi/rust-ffmpeg/target/debug/build/ffmpeg-dev-df8521fdb8050729/out/FFmpeg-FFmpeg-2722fc2'
', /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/ffmpeg-dev-0.3.8/build.rs:301:17
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.

@colbyn
Copy link
Member

colbyn commented Feb 18, 2020

Ahh no worries, your English is fine.

Anyway I'm very busy studying and whatnot to really dive into this issue at the moment.

I'll be honest with you, I recommend just using the CLI interface. As I advised in issue #6, here.

@liuziangexit
Copy link

liuziangexit commented Jan 8, 2021

Hello guys, greetings

Looks like I'm runnning into the same problem with raspi3B+FFmpeg-n4.3.1.

I did some investigation, and i doubt that this build error is because instruction USAT(and its brother SSAT) are not being present on the ARMv8(which is the architecture rasp3,4 are using) although the offical ARM doc says they are "available in ARMv6 and above".

[0]https://stackoverflow.com/questions/53279286/alternatives-to-missing-ssat-and-usat-instructions-in-arm64
[1]To check the Instruction Set gcc are using, type: gcc -march=native -Q --help=target|grep march

@liuziangexit
Copy link

If this is the case, i think the fix should be using the USAT alternative instruction while in ARMv8, but since im not a ARM guy i dont know what the alternative instruction(if there is) is.

The temporary solution i found is to use C to simulate USAT, this will obviously harm to performace since this approch requies CPU branching.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants