I'm using WSL running Ubuntu-18.04, here is my operation:
git clone https://github.com/epi052/fuzzing-101-solutions.git
cd ./fuzzing-101-solutions
git clone https://github.com/AFLplusplus/LibAFL.git
cd ./LibAFL && git checkout c7512fceecfc222e0618a5c7ac1a29a3fcfeeb16
cd ../
cargo make build -vvvv
Here is my first Error:
error: failed to select a version for `libafl_qemu`.
... required by package `exercise-4 v0.1.0 (/home/xxx/fuzzing-101-solutions/exercise-4)`
versions that meet the requirements `*` are: 0.6.1
the package `exercise-4` depends on `libafl_qemu`, with features: `aarch64` but `libafl_qemu` does not have these features.
failed to select a version for `libafl_qemu` which could resolve this conflict
[cargo-make][1] ERROR - Error while executing command, exit code: 101
[cargo-make][1] WARN - Build Failed.
[cargo-make] ERROR - Error while running duckscript: Source: Unknown Line: 4 - Error while executing command, exit code: 1
[cargo-make] WARN - Build Failed.
It seems that Something goes wrong with. exercise-4
, so I remove exercise-4
, modify Cargo.toml
and rerun cargo make build -vvvv
,here is another Error:
error: failed to run custom build command for `libafl_cc v0.6.1 (/home/xxx/fuzzing-101-solutions/LibAFL/libafl_cc)`
Caused by:
process didn't exit successfully: `/home/xxx/fuzzing-101-solutions/target/debug/build/libafl_cc-8d0629ba95313f54/build-script-build` (exit status: 101)
--- stdout
cargo:rerun-if-changed=src/cmplog-routines-pass.cc
--- stderr
thread 'main' panicked at 'Failed to compile cmplog-routines-pass.cc: Os { code: 2, kind: NotFound, message: "No such file or directory" }', LibAFL/libafl_cc/build.rs:120:14
stack backtrace:
0: 0x558e4ec8a17c - std::backtrace_rs::backtrace::libunwind::trace::h91c465e73bf6c785
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5
1: 0x558e4ec8a17c - std::backtrace_rs::backtrace::trace_unsynchronized::hae9da36f5d58b5f3
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
2: 0x558e4ec8a17c - std::sys_common::backtrace::_print_fmt::h7f499fa126a7effb
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:67:5
3: 0x558e4ec8a17c - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3e2b509ce2ce6007
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:46:22
4: 0x558e4ecaa4ac - core::fmt::write::h753c7571fa063ecb
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/fmt/mod.rs:1168:17
5: 0x558e4ec85b73 - std::io::Write::write_fmt::h2815c0519c99ba09
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/io/mod.rs:1660:15
6: 0x558e4ec8c1b2 - std::sys_common::backtrace::_print::h64941a6fc8b0ed9b
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:49:5
7: 0x558e4ec8c1b2 - std::sys_common::backtrace::print::hcf25e43e1a9b0766
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:36:9
8: 0x558e4ec8c1b2 - std::panicking::default_hook::{{closure}}::h78d3e6cf97fc623d
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:211:50
9: 0x558e4ec8bd95 - std::panicking::default_hook::hda898f8d3ad1a5ae
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:228:9
10: 0x558e4ec8c803 - std::panicking::rust_panic_with_hook::h1a5ea2d6c23051aa
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:606:17
11: 0x558e4ec8c520 - std::panicking::begin_panic_handler::{{closure}}::h07f549390938b73f
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:502:13
12: 0x558e4ec8a624 - std::sys_common::backtrace::__rust_end_short_backtrace::h5ec3758a92cfb00d
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:139:18
13: 0x558e4ec8c259 - rust_begin_unwind
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:498:5
14: 0x558e4ec61b31 - core::panicking::panic_fmt::h3a79a6a99affe1d5
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panicking.rs:116:14 15: 0x558e4ec61bc3 - core::result::unwrap_failed::ha0327e3803285d6e
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/result.rs:1690:5
16: 0x558e4ec6510f - core::result::Result<T,E>::expect::h4634d67f516a8cc7
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/result.rs:975:23
17: 0x558e4ec6e8df - build_script_build::main::hcb8b0a65b7d715c2
at /home/xxx/fuzzing-101-solutions/LibAFL/libafl_cc/build.rs:113:17
18: 0x558e4ec65a9b - core::ops::function::FnOnce::call_once::h273731cd8fd72b28
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5
19: 0x558e4ec6914e - std::sys_common::backtrace::__rust_begin_short_backtrace::hdda2d00a6eb300db
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:123:18
20: 0x558e4ec67811 - std::rt::lang_start::{{closure}}::h125c2ad1bbaceb9a
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/rt.rs:145:18
21: 0x558e4ec89830 - core::ops::function::impls::<impl core::ops::function::FnOnce<A> for &F>::call_once::h443f738a8e9f947a
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:259:13
22: 0x558e4ec89830 - std::panicking::try::do_call::h1e21ba261ba489ec
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40
23: 0x558e4ec89830 - std::panicking::try::h6afd48af8b6c96ac
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19
24: 0x558e4ec89830 - std::panic::catch_unwind::h85dd95e0bab7fb60
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14
25: 0x558e4ec89830 - std::rt::lang_start_internal::{{closure}}::h038455e697c8b03e
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/rt.rs:128:48
26: 0x558e4ec89830 - std::panicking::try::do_call::h6b0ad65979f3077a
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40
27: 0x558e4ec89830 - std::panicking::try::h010108d314169ac6
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19
28: 0x558e4ec89830 - std::panic::catch_unwind::hff397f912b1535c2
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14
29: 0x558e4ec89830 - std::rt::lang_start_internal::h52e73755f77c7dd9
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/rt.rs:128:20
30: 0x558e4ec677e0 - std::rt::lang_start::h8fd9dc50bdbfffee
at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/rt.rs:144:17
31: 0x558e4ec6f4ac - main
32: 0x7f4a5144dbf7 - __libc_start_main
33: 0x558e4ec6222a - _start
34: 0x0 - <unknown>
warning: build failed, waiting for other jobs to finish...
error: build failed
[cargo-make][1] ERROR - Error while executing command, exit code: 101
[cargo-make][1] WARN - Build Failed.
[cargo-make] ERROR - Error while running duckscript: Source: Unknown Line: 4 - Error while executing the command, exit code: 1
[cargo-make] WARN - Build Failed.
Did I miss some details? I suggest that introduction of CI/CD
(github Action) can help with the correctness check.