praetorian-inc / noseyparker

Nosey Parker is a command-line program that finds secrets and sensitive information in textual data and Git history.
Apache License 2.0
1.56k stars 77 forks source link

Unable to cross compile for x86_64 #96

Open tosiara opened 7 months ago

tosiara commented 7 months ago

Describe the bug Unable to cross compile for x86_64 on an ARM64 host (docker Apple M2)

To Reproduce

  1. rustup target add x86_64-unknown-linux-gnu
  2. apt install crossbuild-essential-amd64
  3. cargo build --target=x86_64-unknown-linux-gnu
  4. build fails
# cargo build --target=x86_64-unknown-linux-gnu
   Compiling proc-macro2 v1.0.69
   Compiling unicode-ident v1.0.12
   Compiling libc v0.2.150
   Compiling serde v1.0.192
   Compiling cfg-if v1.0.0
   Compiling version_check v0.9.4
   Compiling autocfg v1.1.0
   Compiling once_cell v1.18.0
   Compiling memchr v2.6.4
   Compiling thiserror v1.0.50
   Compiling regex-syntax v0.8.2
   Compiling bytes v1.1.0
   Compiling crossbeam-utils v0.8.16
   Compiling aho-corasick v1.1.2
   Compiling scopeguard v1.2.0
   Compiling itoa v1.0.9
   Compiling typenum v1.17.0
   Compiling memoffset v0.9.0
   Compiling crossbeam-epoch v0.9.15
   Compiling quote v1.0.33
   Compiling syn v2.0.39
   Compiling cc v1.0.83
   Compiling generic-array v0.14.7
   Compiling lock_api v0.4.11
   Compiling parking_lot_core v0.9.9
   Compiling rayon-core v1.12.0
   Compiling crossbeam-deque v0.8.3
   Compiling crossbeam-queue v0.3.8
   Compiling cmake v0.1.50
   Compiling regex-automata v0.4.3
   Compiling same-file v1.0.6
   Compiling crc32fast v1.3.2
   Compiling gix-trace v0.1.3
   Compiling walkdir v2.4.0
   Compiling crossbeam-channel v0.5.8
   Compiling adler v1.0.2
   Compiling block-buffer v0.10.4
   Compiling crypto-common v0.1.6
   Compiling either v1.9.0
   Compiling digest v0.10.7
   Compiling miniz_oxide v0.7.1
   Compiling rayon v1.8.0
   Compiling sha1-asm v0.5.2
   Compiling libz-ng-sys v1.1.12
   Compiling crossbeam v0.8.2
   Compiling bytesize v1.3.0
   Compiling cpufeatures v0.2.11
   Compiling human_format v1.0.3
   Compiling sha1 v0.10.6
   Compiling prodash v26.2.2
   Compiling sha1_smol v1.0.0
   Compiling num-traits v0.2.17
   Compiling ahash v0.8.6
   Compiling getrandom v0.2.11
   Compiling time-core v0.1.2
   Compiling zerocopy v0.7.26
   Compiling allocator-api2 v0.2.16
   Compiling powerfmt v0.2.0
   Compiling time-macros v0.2.15
   Compiling deranged v0.3.9
   Compiling num_threads v0.1.6
   Compiling hashbrown v0.14.2
   Compiling rustix v0.38.24
   Compiling winnow v0.5.19
   Compiling jwalk v0.8.1
   Compiling btoi v0.4.3
   Compiling linux-raw-sys v0.4.11
   Compiling home v0.5.5
   Compiling memmap2 v0.7.1
   Compiling fastrand v2.0.1
   Compiling signal-hook v0.3.17
   Compiling signal-hook-registry v1.4.1
   Compiling vcpkg v0.2.15
   Compiling pkg-config v0.3.27
   Compiling pin-project-lite v0.2.13
   Compiling unicode-bom v2.0.3
   Compiling unicase v2.6.0
   Compiling static_assertions v1.1.0
   Compiling anyhow v1.0.75
   Compiling syn v1.0.109
   Compiling time v0.3.30
   Compiling gix-utils v0.1.5
   Compiling tracing-core v0.1.32
   Compiling log v0.4.20
   Compiling fnv v1.0.7
   Compiling openssl-src v300.1.6+3.1.4
   Compiling serde_json v1.0.108
   Compiling matches v0.1.10
   Compiling percent-encoding v2.1.0
   Compiling tinyvec_macros v0.1.1
   Compiling rustversion v1.0.14
   Compiling tinyvec v1.6.0
   Compiling openssl-sys v0.9.95
   Compiling equivalent v1.0.1
   Compiling lazy_static v1.4.0
   Compiling futures-core v0.3.29
   Compiling indexmap v2.1.0
   Compiling form_urlencoded v1.0.1
   Compiling encoding_rs v0.8.33
   Compiling unicode-bidi v0.3.13
   Compiling ryu v1.0.15
   Compiling serde_derive v1.0.192
   Compiling thiserror-impl v1.0.50
   Compiling tracing-attributes v0.1.27
   Compiling unicode-normalization v0.1.22
   Compiling unicode-width v0.1.11
   Compiling idna v0.2.3
   Compiling mio v0.8.9
   Compiling socket2 v0.5.5
   Compiling futures-task v0.3.29
   Compiling tokio v1.34.0
   Compiling url v2.3.0
   Compiling http v0.2.11
   Compiling gix-chunk v0.4.4
   Compiling tracing v0.1.40
   Compiling gix-bitmap v0.2.7
   Compiling regex v1.10.2
   Compiling filetime v0.2.22
   Compiling slab v0.4.9
   Compiling strsim v0.10.0
   Compiling futures-util v0.3.29
   Compiling foreign-types-shared v0.1.1
   Compiling heck v0.4.1
   Compiling ident_case v1.0.1
   Compiling openssl v0.10.59
   Compiling darling_core v0.14.4
   Compiling foreign-types v0.3.2
   Compiling openssl-macros v0.1.1
   Compiling portable-atomic v1.5.1
   Compiling semver v1.0.20
   Compiling httparse v1.8.0
   Compiling arrayvec v0.7.4
   Compiling futures-channel v0.3.29
   Compiling futures-sink v0.3.29
   Compiling pin-utils v0.1.0
   Compiling native-tls v0.2.11
   Compiling tokio-util v0.7.10
   Compiling flate2 v1.0.28
   Compiling uluru v3.0.0
   Compiling thread_local v1.1.7
   Compiling httpdate v1.0.3
   Compiling utf8parse v0.2.1
   Compiling hashbrown v0.12.3
   Compiling darling_macro v0.14.4
   Compiling mime v0.3.17
   Compiling prettyplease v0.2.15
   Compiling try-lock v0.2.4
   Compiling openssl-probe v0.1.5
   Compiling clru v0.6.1
   Compiling want v0.3.1
   Compiling imara-diff v0.1.5
   Compiling bstr v1.8.0
   Compiling bitflags v2.4.1
   Compiling smallvec v1.11.2
   Compiling faster-hex v0.8.1
   Compiling kstring v2.0.0
   Compiling parking_lot v0.12.1
   Compiling gix-hash v0.13.1
   Compiling gix-date v0.8.0
   Compiling gix-validate v0.8.0
   Compiling gix-path v0.10.0
   Compiling gix-features v0.36.0
   Compiling gix-actor v0.28.0
   Compiling gix-hashtable v0.4.0
   Compiling gix-quote v0.4.7
   Compiling gix-command v0.2.10
   Compiling gix-config-value v0.14.0
   Compiling gix-packetline-blocking v0.16.6
   Compiling gix-sec v0.10.0
   Compiling gix-object v0.38.0
   Compiling gix-fs v0.8.0
   Compiling gix-commitgraph v0.22.0
   Compiling gix-glob v0.14.0
   Compiling gix-url v0.25.1
   Compiling darling v0.14.4
   Compiling globset v0.4.13
   Compiling schemafy_core v0.6.0
   Compiling gix-attributes v0.20.0
   Compiling gix-ignore v0.9.0
   Compiling tempfile v3.8.1
   Compiling gix-prompt v0.7.0
   Compiling Inflector v0.11.4
   Compiling gix-revwalk v0.9.0
   Compiling gix-tempfile v11.0.0
   Compiling gix-traverse v0.34.0
   Compiling gix-filter v0.6.0
   Compiling gix-revision v0.23.0
   Compiling gix-pathspec v0.4.0
   Compiling gix-lock v11.0.0
   Compiling gix-pack v0.44.0
   Compiling gix-ref v0.38.0
   Compiling gix-index v0.26.0
   Compiling anstyle-parse v0.2.2
   Compiling gix-refspec v0.19.0
   Compiling gix-worktree-stream v0.6.0
   Compiling h2 v0.3.22
   Compiling gix-worktree v0.27.0
   Compiling gix-config v0.31.0
   Compiling uriparse v0.6.4
   Compiling http-body v0.4.5
   Compiling console v0.15.7
   Compiling vergen v8.2.6
   Compiling libsqlite3-sys v0.26.0
   Compiling vectorscan-sys v0.0.0 (/noseyparker/crates/vectorscan-sys)
   Compiling socket2 v0.4.10
   Compiling io-close v0.3.7
   Compiling number_prefix v0.4.0
   Compiling anstyle-query v1.0.0
   Compiling anstyle v1.0.4
   Compiling arc-swap v1.6.0
   Compiling colorchoice v1.0.0
   Compiling unicode-segmentation v1.10.1
   Compiling tower-service v0.3.2
   Compiling indicatif v0.17.7
   Compiling sysinfo v0.29.10
   Compiling hyper v0.14.27
   Compiling gix-odb v0.54.0
   Compiling anstream v0.6.4
   Compiling gix-worktree-state v0.4.0
   Compiling schemafy_lib v0.6.0
   Compiling gix-submodule v0.5.0
   Compiling gix-status v0.2.0
   Compiling rustc_version v0.4.0
   Compiling gix-discover v0.26.0
   Compiling mime_guess v2.0.4
   Compiling gix-archive v0.6.0
   Compiling gix-negotiate v0.9.0
   Compiling gix-diff v0.37.0
   Compiling gix-credentials v0.21.0
   Compiling terminal_size v0.3.0
   Compiling ignore v0.4.20
   Compiling derive_builder_core v0.12.0
   Compiling gix-mailmap v0.20.0
   Compiling foreign-types-macros v0.2.3
   Compiling gix-macros v0.1.0
   Compiling libmimalloc-sys v0.1.35
   Compiling dirs-sys-next v0.1.2
   Compiling foreign-types-shared v0.3.1
   Compiling retain_mut v0.1.7
   Compiling unsafe-libyaml v0.2.9
   Compiling hyperx v1.4.0
   Compiling bytemuck v1.14.0
   Compiling fixedbitset v0.4.2
   Compiling regex-syntax v0.6.29
   Compiling clap_lex v0.6.0
   Compiling byteorder v1.5.0
   Compiling serde_yaml v0.9.27
   Compiling roaring v0.10.2
   Compiling clap_builder v4.4.8
   Compiling petgraph v0.6.4
   Compiling derive_builder_macro v0.12.0
   Compiling gix v0.55.2
   Compiling foreign-types v0.5.0
   Compiling serde-sarif v0.4.2
   Compiling regex-automata v0.1.10
   Compiling dirs-next v2.0.0
   Compiling progress v0.0.0 (/noseyparker/crates/progress)
   Compiling bstring-serde v0.0.0 (/noseyparker/crates/bstring-serde)
   Compiling serde_urlencoded v0.7.1
   Compiling strum_macros v0.25.3
   Compiling clap_derive v4.4.7
   Compiling hashlink v0.8.4
   Compiling include_dir_macros v0.7.3
   Compiling csv-core v0.1.11
   Compiling fallible-streaming-iterator v0.1.9
   Compiling language-tags v0.3.2
   Compiling ipnet v2.9.0
   Compiling base64 v0.13.1
   Compiling zeroize v1.6.0
   Compiling glob v0.3.1
   Compiling overload v0.1.1
   Compiling rlimit v0.10.1
   Compiling fallible-iterator v0.2.0
   Compiling base64 v0.21.5
   Compiling rusqlite v0.29.0
   Compiling include_dir v0.7.3
   Compiling nu-ansi-term v0.46.0
   Compiling strum v0.25.0
   Compiling secrecy v0.8.0
   Compiling csv v1.3.0
   Compiling input-enumerator v0.0.0 (/noseyparker/crates/input-enumerator)
   Compiling noseyparker-cli v0.16.0-dev (/noseyparker/crates/noseyparker-cli)
   Compiling matchers v0.1.0
   Compiling clap v4.4.8
   Compiling term v0.7.0
   Compiling derive_builder v0.12.0
   Compiling noseyparker-rules v0.0.0 (/noseyparker/crates/noseyparker-rules)
   Compiling is-terminal v0.4.9
   Compiling strum_macros v0.24.3
   Compiling sharded-slab v0.1.7
   Compiling tracing-log v0.2.0
   Compiling chrono v0.4.31
   Compiling atoi v2.0.0
   Compiling hex v0.4.3
   Compiling indoc v2.0.4
   Compiling encode_unicode v1.0.0
   Compiling tracing-subscriber v0.3.18
   Compiling content-guesser v0.0.0 (/noseyparker/crates/content-guesser)
   Compiling prettytable-rs v0.10.0
   Compiling mimalloc v0.1.39
   Compiling clap_complete v4.4.4
   Compiling tracing-log v0.1.4
   Compiling indenter v0.3.3
error: failed to run custom build command for `vectorscan-sys v0.0.0 (/noseyparker/crates/vectorscan-sys)`

Caused by:
  process didn't exit successfully: `/noseyparker/target/debug/build/vectorscan-sys-fe597a37ba2455af/build-script-build` (exit status: 101)
  --- stdout
  cargo:rustc-link-lib=stdc++
  CMAKE_TOOLCHAIN_FILE_x86_64-unknown-linux-gnu = None
  CMAKE_TOOLCHAIN_FILE_x86_64_unknown_linux_gnu = None
  TARGET_CMAKE_TOOLCHAIN_FILE = None
  CMAKE_TOOLCHAIN_FILE = None
  CMAKE_GENERATOR_x86_64-unknown-linux-gnu = None
  CMAKE_GENERATOR_x86_64_unknown_linux_gnu = None
  TARGET_CMAKE_GENERATOR = None
  CMAKE_GENERATOR = None
  CMAKE_PREFIX_PATH_x86_64-unknown-linux-gnu = None
  CMAKE_PREFIX_PATH_x86_64_unknown_linux_gnu = None
  TARGET_CMAKE_PREFIX_PATH = None
  CMAKE_PREFIX_PATH = None
  CMAKE_x86_64-unknown-linux-gnu = None
  CMAKE_x86_64_unknown_linux_gnu = None
  TARGET_CMAKE = None
  CMAKE = None
  running: cd "/noseyparker/target/x86_64-unknown-linux-gnu/debug/build/vectorscan-sys-41a228b78f46041b/out/build" && CMAKE_PREFIX_PATH="" "cmake" "/noseyparker/crates/vectorscan-sys/vectorscan" "-DCMAKE_INSTALL_INCLUDEDIR=/noseyparker/target/x86_64-unknown-linux-gnu/debug/build/vectorscan-sys-41a228b78f46041b/out/include" "-DFAT_RUNTIME=ON" "-DBUILD_AVX512=OFF" "-DBUILD_EXAMPLES=OFF" "-DBUILD_BENCHMARKS=OFF" "-DBUILD_UNITTESTS=OFF" "-DBUILD_DOCS=OFF" "-DBUILD_TOOLS=OFF" "-DCMAKE_SYSTEM_NAME=Linux" "-DCMAKE_SYSTEM_PROCESSOR=x86_64" "-DCMAKE_INSTALL_PREFIX=/noseyparker/target/x86_64-unknown-linux-gnu/debug/build/vectorscan-sys-41a228b78f46041b/out" "-DCMAKE_C_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_C_COMPILER=/usr/bin/x86_64-linux-gnu-gcc" "-DCMAKE_CXX_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_CXX_COMPILER=/usr/bin/x86_64-linux-gnu-g++" "-DCMAKE_ASM_FLAGS= -ffunction-sections -fdata-sections -fPIC -m64" "-DCMAKE_ASM_COMPILER=/usr/bin/x86_64-linux-gnu-gcc" "-DCMAKE_BUILD_TYPE=Release"
  -- The C compiler identification is GNU 10.2.1
  -- The CXX compiler identification is GNU 10.2.1
  -- Detecting C compiler ABI info
  -- Detecting C compiler ABI info - done
  -- Check for working C compiler: /usr/bin/x86_64-linux-gnu-gcc - skipped
  -- Detecting C compile features
  -- Detecting C compile features - done
  -- Detecting CXX compiler ABI info
  -- Detecting CXX compiler ABI info - done
  -- Check for working CXX compiler: /usr/bin/x86_64-linux-gnu-g++ - skipped
  -- Detecting CXX compile features
  -- Detecting CXX compile features - done
  -- Performing Test ARCH_X86_64
  -- Performing Test ARCH_X86_64 - Success
  -- Performing Test ARCH_IA32
  -- Performing Test ARCH_IA32 - Failed
  -- Performing Test ARCH_AARCH64
  -- Performing Test ARCH_AARCH64 - Failed
  -- Performing Test ARCH_ARM32
  -- Performing Test ARCH_ARM32 - Failed
  -- Performing Test ARCH_PPC64EL
  -- Performing Test ARCH_PPC64EL - Failed
  -- Build type RELEASE
  -- using release build
  -- Boost version: 1.83.0
  -- Build date: 2023-11-22
  -- Building static libraries
  -- gcc version 10.2.1
  -- gcc will tune for native, native
  -- ARCH_C_FLAGS   : -msse4.2
  -- ARCH_CXX_FLAGS : -msse4.2
  -- g++ version 10.2.1
  -- Looking for include file unistd.h
  -- Looking for include file unistd.h - found
  -- Looking for include file intrin.h
  -- Looking for include file intrin.h - not found
  -- Looking for C++ include intrin.h
  -- Looking for C++ include intrin.h - not found
  -- Looking for include file x86intrin.h
  -- Looking for include file x86intrin.h - found
  -- Looking for C++ include x86intrin.h
  -- Looking for C++ include x86intrin.h - found
  -- Looking for posix_memalign
  -- Looking for posix_memalign - found
  -- Looking for _aligned_malloc
  -- Looking for _aligned_malloc - not found
  -- Performing Test HAS_C_HIDDEN
  -- Performing Test HAS_C_HIDDEN - Success
  -- Performing Test HAS_CXX_HIDDEN
  -- Performing Test HAS_CXX_HIDDEN - Success
  -- Looking for _LIBCPP_VERSION
  -- Looking for _LIBCPP_VERSION - not found
  -- generator is Unix Makefiles
  -- Performing Test HAS_C_ATTR_IFUNC
  -- Performing Test HAS_C_ATTR_IFUNC - Success
  -- Performing Test HAVE_SSE42
  -- Performing Test HAVE_SSE42 - Success
  -- Performing Test HAVE_AVX2
  -- Performing Test HAVE_AVX2 - Success
  -- Performing Test HAVE_AVX512
  -- Performing Test HAVE_AVX512 - Failed
  -- Performing Test HAVE_AVX512VBMI
  -- Performing Test HAVE_AVX512VBMI - Failed
  -- Performing Test HAVE_CC_BUILTIN_ASSUME_ALIGNED
  -- Performing Test HAVE_CC_BUILTIN_ASSUME_ALIGNED - Success
  -- Performing Test HAVE_CXX_BUILTIN_ASSUME_ALIGNED
  -- Performing Test HAVE_CXX_BUILTIN_ASSUME_ALIGNED - Success
  -- Performing Test HAVE__BUILTIN_CONSTANT_P
  -- Performing Test HAVE__BUILTIN_CONSTANT_P - Success
  -- Performing Test C_FLAG_Wvla
  -- Performing Test C_FLAG_Wvla - Success
  -- Performing Test C_FLAG_Wpointer_arith
  -- Performing Test C_FLAG_Wpointer_arith - Success
  -- Performing Test C_FLAG_Wstrict_prototypes
  -- Performing Test C_FLAG_Wstrict_prototypes - Success
  -- Performing Test C_FLAG_Wmissing_prototypes
  -- Performing Test C_FLAG_Wmissing_prototypes - Success
  -- Performing Test CXX_FLAG_Wvla
  -- Performing Test CXX_FLAG_Wvla - Success
  -- Performing Test CXX_FLAG_Wpointer_arith
  -- Performing Test CXX_FLAG_Wpointer_arith - Success
  -- Performing Test CC_SELF_ASSIGN
  -- Performing Test CC_SELF_ASSIGN - Failed
  -- Performing Test CXX_SELF_ASSIGN
  -- Performing Test CXX_SELF_ASSIGN - Failed
  -- Performing Test CC_PAREN_EQUALITY
  -- Performing Test CC_PAREN_EQUALITY - Failed
  -- Performing Test CXX_UNUSED_CONST_VAR
  -- Performing Test CXX_UNUSED_CONST_VAR - Success
  -- Performing Test CXX_IGNORED_ATTR
  -- Performing Test CXX_IGNORED_ATTR - Success
  -- Performing Test CXX_REDUNDANT_MOVE
  -- Performing Test CXX_REDUNDANT_MOVE - Success
  -- Performing Test CXX_WEAK_VTABLES
  -- Performing Test CXX_WEAK_VTABLES - Failed
  -- Performing Test CXX_MISSING_DECLARATIONS
  -- Performing Test CXX_MISSING_DECLARATIONS - Success
  -- Performing Test CXX_UNUSED_LOCAL_TYPEDEFS
  -- Performing Test CXX_UNUSED_LOCAL_TYPEDEFS - Success
  -- Performing Test CXX_WUNUSED_VARIABLE
  -- Performing Test CXX_WUNUSED_VARIABLE - Success
  -- Performing Test CC_STRINGOP_OVERFLOW
  -- Performing Test CC_STRINGOP_OVERFLOW - Success
  -- Building runtime for multiple microarchitectures
  -- Looking for mmap
  -- Looking for mmap - found
  -- Found PkgConfig: /usr/bin/pkg-config (found version "0.29.2")
  -- Checking for module 'libpcre>=8.41'
  --   Requested 'libpcre >= 8.41' but version of libpcre is 8.39
  -- PCRE version 8.41 or above not found
  -- PCRE 8.41 or above not found
  -- Configuring done
  -- Generating done
  -- Build files have been written to: /noseyparker/target/x86_64-unknown-linux-gnu/debug/build/vectorscan-sys-41a228b78f46041b/out/build
  running: cd "/noseyparker/target/x86_64-unknown-linux-gnu/debug/build/vectorscan-sys-41a228b78f46041b/out/build" && MAKEFLAGS="-j --jobserver-fds=7,8 --jobserver-auth=7,8" "cmake" "--build" "." "--target" "install" "--config" "Release"
  Scanning dependencies of target hs_compile
  [  1%] Building CXX object CMakeFiles/hs_compile.dir/src/grey.cpp.o
  [  1%] Building CXX object CMakeFiles/hs_compile.dir/src/hs.cpp.o
  [  1%] Building CXX object CMakeFiles/hs_compile.dir/src/compiler/asserts.cpp.o
  [  2%] Building CXX object CMakeFiles/hs_compile.dir/src/compiler/compiler.cpp.o
  Scanning dependencies of target hs_exec_core2
  [  2%] Building C object CMakeFiles/hs_exec_core2.dir/src/crc32.c.o
  [  3%] Building C object CMakeFiles/hs_exec_core2.dir/src/runtime.c.o
  Scanning dependencies of target hs_exec_common
  [  4%] Building C object CMakeFiles/hs_exec_common.dir/src/alloc.c.o
  [  4%] Building C object CMakeFiles/hs_exec_common.dir/src/scratch.c.o
  [  4%] Building C object CMakeFiles/hs_exec_common.dir/src/util/multibit.c.o
  [  5%] Building C object CMakeFiles/hs_exec_common.dir/src/util/arch/x86/cpuid_flags.c.o
  [  5%] Building C object CMakeFiles/hs_exec_common.dir/src/dispatcher.c.o
  Scanning dependencies of target hs_exec_avx2
  Scanning dependencies of target hs_exec_corei7
  [  6%] Building C object CMakeFiles/hs_exec_avx2.dir/src/crc32.c.o
  [  7%] Building C object CMakeFiles/hs_exec_corei7.dir/src/crc32.c.o
  [  7%] Building C object CMakeFiles/hs_exec_avx2.dir/src/runtime.c.o
  [  7%] Built target hs_exec_common
  [  7%] Building C object CMakeFiles/hs_exec_avx2.dir/src/stream_compress.c.o
  [  7%] Building C object CMakeFiles/hs_exec_corei7.dir/src/runtime.c.o
  [  7%] Building C object CMakeFiles/hs_exec_corei7.dir/src/stream_compress.c.o
  [  8%] Building C object CMakeFiles/hs_exec_corei7.dir/src/fdr/fdr.c.o
  [  8%] Building CXX object CMakeFiles/hs_compile.dir/src/compiler/error.cpp.o
  [  8%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/engine_description.cpp.o
  [  9%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/fdr_compile.cpp.o
  [  9%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/fdr_compile_util.cpp.o
  [  9%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/fdr_confirm_compile.cpp.o
  [ 10%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/fdr_engine_description.cpp.o
  [ 10%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/flood_compile.cpp.o
  [ 10%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/teddy_compile.cpp.o
  [ 11%] Building CXX object CMakeFiles/hs_compile.dir/src/fdr/teddy_engine_description.cpp.o
  [ 11%] Building CXX object CMakeFiles/hs_compile.dir/src/hwlm/hwlm_build.cpp.o
  [ 11%] Building CXX object CMakeFiles/hs_compile.dir/src/hwlm/hwlm_literal.cpp.o
  [ 12%] Building CXX object CMakeFiles/hs_compile.dir/src/hwlm/noodle_build.cpp.o
  [ 12%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/accel_dfa_build_strat.cpp.o
  [ 12%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/accelcompile.cpp.o
  [ 13%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/castlecompile.cpp.o
  [ 13%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/dfa_build_strat.cpp.o
  [ 13%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/dfa_min.cpp.o
  [ 14%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/goughcompile.cpp.o
  [ 14%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/goughcompile_accel.cpp.o
  [ 14%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/goughcompile_reg.cpp.o
  [ 15%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/mcclellancompile.cpp.o
  [ 15%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/mcclellancompile_util.cpp.o
  [ 15%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/mcsheng_compile.cpp.o
  [ 16%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/limex_compile.cpp.o
  [ 16%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/mpvcompile.cpp.o
  [ 16%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/nfa_build_util.cpp.o
  [ 17%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/rdfa.cpp.o
  [ 17%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/rdfa_graph.cpp.o
  [ 17%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/rdfa_merge.cpp.o
  [ 17%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/shengcompile.cpp.o
  [ 18%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/repeatcompile.cpp.o
  [ 18%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/shufticompile.cpp.o
  [ 18%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/tamaramacompile.cpp.o
  [ 19%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/trufflecompile.cpp.o
  [ 19%] Building CXX object CMakeFiles/hs_compile.dir/src/nfa/vermicellicompile.cpp.o
  [ 19%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng.cpp.o
  [ 20%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_anchored_acyclic.cpp.o
  [ 20%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_anchored_dots.cpp.o
  [ 20%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_asserts.cpp.o
  [ 21%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_builder.cpp.o
  [ 21%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_calc_components.cpp.o
  [ 21%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_cyclic_redundancy.cpp.o
  [ 22%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_depth.cpp.o
  [ 22%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_dominators.cpp.o
  [ 22%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_edge_redundancy.cpp.o
  [ 23%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_equivalence.cpp.o
  [ 23%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_execute.cpp.o
  [ 23%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_expr_info.cpp.o
  [ 24%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_extparam.cpp.o
  [ 24%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_fixed_width.cpp.o
  [ 24%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_fuzzy.cpp.o
  [ 25%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_haig.cpp.o
  [ 25%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_holder.cpp.o
  [ 25%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_is_equal.cpp.o
  [ 26%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_lbr.cpp.o
  [ 26%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_literal_analysis.cpp.o
  [ 26%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_literal_component.cpp.o
  [ 27%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_literal_decorated.cpp.o
  [ 27%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_mcclellan.cpp.o
  [ 27%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_limex.cpp.o
  [ 28%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_limex_accel.cpp.o
  [ 28%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_misc_opt.cpp.o
  [ 28%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_netflow.cpp.o
  [ 29%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_prefilter.cpp.o
  [ 29%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_prune.cpp.o
  [ 29%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_puff.cpp.o
  [ 30%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_redundancy.cpp.o
  [ 30%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_region.cpp.o
  [ 30%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_region_redundancy.cpp.o
  [ 31%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_repeat.cpp.o
  [ 31%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_reports.cpp.o
  [ 31%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_restructuring.cpp.o
  [ 32%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_revacc.cpp.o
  [ 32%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_sep.cpp.o
  [ 32%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_small_literal_set.cpp.o
  [ 33%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_som.cpp.o
  [ 33%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_som_add_redundancy.cpp.o
  [ 33%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_som_util.cpp.o
  [ 34%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_split.cpp.o
  [ 34%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_squash.cpp.o
  [ 34%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_stop.cpp.o
  [ 35%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_uncalc_components.cpp.o
  [ 35%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_utf8.cpp.o
  [ 35%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_util.cpp.o
  [ 35%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_vacuous.cpp.o
  [ 36%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_violet.cpp.o
  [ 36%] Building CXX object CMakeFiles/hs_compile.dir/src/nfagraph/ng_width.cpp.o
  [ 36%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/AsciiComponentClass.cpp.o
  [ 37%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/Component.cpp.o
  [ 37%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentAlternation.cpp.o
  [ 37%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentAssertion.cpp.o
  [ 38%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentAtomicGroup.cpp.o
  [ 38%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentBackReference.cpp.o
  [ 38%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentBoundary.cpp.o
  [ 39%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentByte.cpp.o
  [ 39%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentClass.cpp.o
  [ 39%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentCondReference.cpp.o
  [ 40%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentEUS.cpp.o
  [ 40%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentEmpty.cpp.o
  [ 40%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentRepeat.cpp.o
  [ 41%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentSequence.cpp.o
  [ 41%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentVisitor.cpp.o
  [ 41%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ComponentWordBoundary.cpp.o
  [ 42%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ConstComponentVisitor.cpp.o
  [ 42%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/Parser.cpp.o
  [ 42%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/Utf8ComponentClass.cpp.o
  [ 43%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/buildstate.cpp.o
  [ 43%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/check_refs.cpp.o
  [ 43%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/control_verbs.cpp.o
  [ 44%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/logical_combination.cpp.o
  [ 44%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/parse_error.cpp.o
  [ 44%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/parser_util.cpp.o
  [ 45%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/prefilter.cpp.o
  [ 45%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/shortcut_literal.cpp.o
  [ 45%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/ucp_table.cpp.o
  [ 46%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/unsupported.cpp.o
  [ 46%] Building CXX object CMakeFiles/hs_compile.dir/src/parser/utf8_validate.cpp.o
  [ 46%] Building CXX object CMakeFiles/hs_compile.dir/src/smallwrite/smallwrite_build.cpp.o
  [ 47%] Building CXX object CMakeFiles/hs_compile.dir/src/som/slot_manager.cpp.o
  [ 47%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_add.cpp.o
  [ 47%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_add_mask.cpp.o
  [ 48%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_anchored.cpp.o
  [ 48%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_bytecode.cpp.o
  [ 48%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_castle.cpp.o
  [ 49%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_compile.cpp.o
  [ 49%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_convert.cpp.o
  [ 49%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_dedupe.cpp.o
  [ 50%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_engine_blob.cpp.o
  [ 50%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_exclusive.cpp.o
  [ 50%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_groups.cpp.o
  [ 51%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_infix.cpp.o
  [ 51%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_instructions.cpp.o
  [ 51%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_lit_accel.cpp.o
  [ 52%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_long_lit.cpp.o
  [ 52%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_lookaround.cpp.o
  [ 52%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_matchers.cpp.o
  [ 52%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_merge.cpp.o
  [ 53%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_misc.cpp.o
  [ 53%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_program.cpp.o
  [ 53%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_role_aliasing.cpp.o
  [ 54%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_scatter.cpp.o
  [ 54%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_build_width.cpp.o
  [ 54%] Building CXX object CMakeFiles/hs_compile.dir/src/rose/rose_in_util.cpp.o
  [ 55%] Building CXX object CMakeFiles/hs_compile.dir/src/util/alloc.cpp.o
  [ 55%] Building CXX object CMakeFiles/hs_compile.dir/src/util/charreach.cpp.o
  [ 55%] Building CXX object CMakeFiles/hs_compile.dir/src/util/clique.cpp.o
  [ 56%] Building CXX object CMakeFiles/hs_compile.dir/src/util/compile_context.cpp.o
  [ 56%] Building CXX object CMakeFiles/hs_compile.dir/src/util/compile_error.cpp.o
  [ 56%] Building CXX object CMakeFiles/hs_compile.dir/src/util/depth.cpp.o
  [ 57%] Building CXX object CMakeFiles/hs_compile.dir/src/util/dump_mask.cpp.o
  [ 57%] Building CXX object CMakeFiles/hs_compile.dir/src/util/fatbit_build.cpp.o
  [ 57%] Building CXX object CMakeFiles/hs_compile.dir/src/util/multibit_build.cpp.o
  [ 58%] Building CXX object CMakeFiles/hs_compile.dir/src/util/report_manager.cpp.o
  [ 58%] Building CXX object CMakeFiles/hs_compile.dir/src/util/target_info.cpp.o
  [ 58%] Building CXX object CMakeFiles/hs_compile.dir/src/util/ue2string.cpp.o
  [ 58%] Built target hs_compile

  --- stderr
  cc1: error: bad value ('native') for '-march=' switch
  cc1: note: valid arguments to '-march=' switch are: nocona core2 nehalem corei7 westmere sandybridge corei7-avx ivybridge core-avx-i haswell core-avx2 broadwell skylake skylake-avx512 cannonlake icelake-client icelake-server cascadelake tigerlake cooperlake bonnell atom silvermont slm goldmont goldmont-plus tremont knl knm x86-64 x86-64-v2 x86-64-v3 x86-64-v4 eden-x2 nano nano-1000 nano-2000 nano-3000 nano-x2 eden-x4 nano-x4 k8 k8-sse3 opteron opteron-sse3 athlon64 athlon64-sse3 athlon-fx amdfam10 barcelona bdver1 bdver2 bdver3 bdver4 znver1 znver2 btver1 btver2
  CMake Warning:
    Manually-specified variables were not used by the project:

      CMAKE_ASM_COMPILER
      CMAKE_ASM_FLAGS

  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_core2.dir/src/crc32.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_core2.dir/build.make:82: CMakeFiles/hs_exec_core2.dir/src/crc32.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_core2.dir/src/crc32.c.o'
  gmake[2]: *** Waiting for unfinished jobs....
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_core2.dir/src/runtime.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_core2.dir/build.make:95: CMakeFiles/hs_exec_core2.dir/src/runtime.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_core2.dir/src/runtime.c.o'
  gmake[1]: *** [CMakeFiles/Makefile2:302: CMakeFiles/hs_exec_core2.dir/all] Error 2
  gmake[1]: *** Waiting for unfinished jobs....
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_avx2.dir/src/crc32.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_avx2.dir/build.make:82: CMakeFiles/hs_exec_avx2.dir/src/crc32.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_avx2.dir/src/crc32.c.o'
  gmake[2]: *** Waiting for unfinished jobs....
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_corei7.dir/src/crc32.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_corei7.dir/build.make:82: CMakeFiles/hs_exec_corei7.dir/src/crc32.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_corei7.dir/src/crc32.c.o'
  gmake[2]: *** Waiting for unfinished jobs....
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_avx2.dir/src/runtime.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_avx2.dir/build.make:95: CMakeFiles/hs_exec_avx2.dir/src/runtime.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_avx2.dir/src/runtime.c.o'
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_corei7.dir/src/runtime.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_corei7.dir/build.make:95: CMakeFiles/hs_exec_corei7.dir/src/runtime.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_corei7.dir/src/runtime.c.o'
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_corei7.dir/src/fdr/fdr.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_corei7.dir/build.make:121: CMakeFiles/hs_exec_corei7.dir/src/fdr/fdr.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_corei7.dir/src/fdr/fdr.c.o'
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_avx2.dir/src/stream_compress.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_avx2.dir/build.make:108: CMakeFiles/hs_exec_avx2.dir/src/stream_compress.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_avx2.dir/src/stream_compress.c.o'
  gmake[1]: *** [CMakeFiles/Makefile2:217: CMakeFiles/hs_exec_avx2.dir/all] Error 2
  objcopy: Unable to recognise the format of the input file `CMakeFiles/hs_exec_corei7.dir/src/stream_compress.c.o'
  gmake[2]: *** [CMakeFiles/hs_exec_corei7.dir/build.make:108: CMakeFiles/hs_exec_corei7.dir/src/stream_compress.c.o] Error 1
  gmake[2]: *** Deleting file 'CMakeFiles/hs_exec_corei7.dir/src/stream_compress.c.o'
  gmake[1]: *** [CMakeFiles/Makefile2:275: CMakeFiles/hs_exec_corei7.dir/all] Error 2
  gmake: *** [Makefile:149: all] Error 2
  thread 'main' panicked at '
  command did not execute successfully, got: exit status: 2

  build script failed, must exit now', /usr/local/cargo/registry/src/index.crates.io-6f17d22bba15001f/cmake-0.1.50/src/lib.rs:1098:5
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
warning: build failed, waiting for other jobs to finish...

Expected behavior Cross compile process should succeed

Additional context Docker image: rust:1.71-bullseye Hardware: Macbook Pro M2

bradlarsen commented 7 months ago

@tosiara thanks for the detailed report!

Indeed, Nosey Parker's build process is more brittle than those of pure Rust projects. In particular, the Vectorscan dependency is a large C++ codebase that uses CMake for its build. It looks like something in there goes wrong when cross-compiling via cargo.

It might be a small CMake change to make cross-compiling work. But before investigating that, it would be good to upgrade the Vectorscan dependency to the latest version, which has had a number of CMake-related changes (#79).

In the meantime, natively compiling (not cross-compiling) on both ARM64 and X86_64 should work. Also, cross-compiling a Docker image also works.

bradlarsen commented 6 months ago

See also https://github.com/praetorian-inc/noseyparker/issues/100#issuecomment-1854278243: it may be possible to cross-compile using the cross tool and/or the RUSTFLAGS="-C target-features=+crt-static" flag, which statically links the C runtime.