Grommish
(Donald Hoskins)
May 5, 2022, 4:56pm
1
Suricata 6.0.4 under OpenWrt using Rust 1.60.0.
autogen.sh
and configure
set the proper Linker, but fails to call it, instead using the Build Host /usr/bin/ld
, which causes errors for Wrong filetype (EM:8 Mips) rather than the defined linker. Note, this happens even when I directly call cargo
from the ./rust
subdirectory, and is the only rust
/cargo
package I’m having issues with. It appears to be hard-coded to use /usr/bin/ld
.
LD = mips64-openwrt-linux-musl-ld
LDFLAGS = -L/media/data/openwrt/staging_dir/toolchain-mips64_octeonplus_64_gcc-11.2.0_musl/usr/lib -L/media/data/openwrt/staging_dir/toolchain-mips64_octeonplus_64_gcc-11.2.0_musl/lib -znow -zrelro -L/media/data/openwrt/staging_dir/target-mips64_octeonplus_64_musl/usr/lib/libiconv-stub/lib -Wl,-rpath-link=/media/data/openwrt/staging_dir/target-mips64_octeonplus_64_musl/usr/lib/libiconv-stub/lib -L/media/data/openwrt/staging_dir/target-mips64_octeonplus_64_musl/usr/lib/libintl-stub/lib -Wl,-rpath-link=/media/data/openwrt/staging_dir/target-mips64_octeonplus_64_musl/usr/lib/libintl-stub/lib -rdynamic -L/media/data/openwrt/staging_dir/target-mips64_octeonplus_64_musl/usr/lib/
Grommish
(Donald Hoskins)
May 5, 2022, 4:57pm
2
Error as follows, generated Makefile
Suricata Makefile · GitHub due to character limits.
Note: I cut many of the below lines to make character limits
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
make[4]: Entering directory '/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust'
\
CARGO_HOME="/media/data/openwrt/staging_dir/host" \
CARGO_TARGET_DIR="/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target" \
/media/data/openwrt/staging_dir/host/bin/cargo build --release \
--features "function-macro " --target mips64-openwrt-linux-musl
Updating crates.io index
Compiling autocfg v1.1.0
Compiling semver-parser v0.7.0
Compiling arrayvec v0.4.12
Compiling bitflags v1.2.1
Compiling memchr v2.3.4
Compiling libc v0.2.125
Compiling version_check v0.9.4
Compiling nodrop v0.1.14
Compiling cfg-if v0.1.10
Compiling getrandom v0.1.16
Compiling static_assertions v0.3.4
Compiling ryu v1.0.9
Compiling cfg-if v1.0.0
Compiling ppv-lite86 v0.2.16
Compiling siphasher v0.3.10
Compiling proc-macro-hack v0.5.19
Compiling proc-macro2 v0.4.30
Compiling unicode-xid v0.1.0
Compiling build_const v0.2.2
Compiling syn v0.15.44
Compiling num-derive v0.2.5
Compiling base64 v0.11.0
Compiling widestring v0.4.3
Compiling uuid v0.8.2
Compiling md5 v0.7.0
Compiling byteorder v1.4.3
Compiling semver v0.9.0
Compiling num-traits v0.2.15
Compiling num-integer v0.1.45
Compiling num-bigint v0.3.3
Compiling num-bigint v0.2.6
Compiling num-iter v0.1.43
Compiling num-complex v0.2.4
Compiling num-rational v0.2.4
Compiling nom v5.1.1
Compiling phf_shared v0.8.0
Compiling crc v1.8.1
Compiling rustc_version v0.2.3
Compiling phf v0.8.0
Compiling lexical-core v0.6.8
Compiling time v0.1.44
Compiling quote v0.6.13
Compiling rand_core v0.5.1
Compiling rand_chacha v0.2.2
Compiling rand_pcg v0.2.1
Compiling rand v0.7.3
Compiling phf_generator v0.8.0
Compiling phf_codegen v0.8.0
Compiling num-traits v0.1.43
Compiling tls-parser v0.9.4
Compiling enum_primitive v0.1.1
Compiling rusticata-macros v2.1.0
Compiling ntp-parser v0.4.0
Compiling ipsec-parser v0.5.0
Compiling der-parser v3.0.4
Compiling x509-parser v0.6.5
Compiling num v0.2.1
Compiling der-oid-macro v0.2.0
Compiling der-parser v4.1.0
Compiling kerberos-parser v0.5.0
Compiling snmp-parser v0.6.0
Compiling suricata v6.0.4 (/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust)
error: linking with `cc` failed: exit status: 1
|
= note: "cc" "-Wl,--version-script=/media/data/openwrt/tmp/rustcikhedo/list" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.1.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.10.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.11.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.12.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.13.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.14.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.15.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.2.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.3.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.4.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.5.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.6.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.7.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.8.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.9.rcgu.o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.11tb4w6qft5344yp.rcgu.o" "-Wl,--as-needed" "-L" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps" "-L" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/release/deps" "-L" "/media/data/openwrt/staging_dir/host/lib64/rustlib/mips64-openwrt-linux-musl/lib" "-Wl,-Bstatic" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum-1553a2b4d8563b92.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_rational-ddae9aa434e8be5f.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_iter-86ef3ed1c1fdc891.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_complex-8fb3e4910cf62ec7.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libmd5-bdd3030fdb1f224b.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libuuid-92252f5cc3704972.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libntp_parser-ed2c461137e340b9.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libsnmp_parser-b4837e07176be8d4.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libipsec_parser-cc325f2ca8c3cfa3.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libx509_parser-e49b785c02c7b8de.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libtime-d88cfcda7bc46822.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/liblibc-f1b70c0828e220ca.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libbase64-98f393bd16e23af0.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libder_parser-4e02a21a39f58bbd.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_bigint-fc5b8722122ee007.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_integer-d77a145e10543d37.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libtls_parser-7909e52b081f5cea.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libphf-0c402924709d7abf.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libphf_shared-d2db1a947df42660.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libsiphasher-a0519b188cc0d84b.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libenum_primitive-a6d5f3be7a18b13e.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_traits-a04902a156dcfe1d.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libkerberos_parser-3429af3d7a7e21c1.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libder_parser-5a9ca3cca2bd85fc.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnum_traits-a7fd9da87d0a8171.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/librusticata_macros-34e219ae029d9b8e.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libwidestring-2e280f2d58e7ce0a.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libcrc-c0ac466961c88de9.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libbyteorder-48b38cc2c83b9f9d.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnom-8120174429787259.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/liblexical_core-c06531e2190e2669.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libryu-eec1846f208aef98.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libarrayvec-54d4213d90c7daa0.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libnodrop-12886cb3229f9668.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libstatic_assertions-72f1f9c2a2063e65.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libcfg_if-3ca7d69329534fce.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libbitflags-39f8954c827ed3e1.rlib" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libmemchr-1d98ec79401cb4d4.rlib" "-Wl,--start-group" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libstd-4de174856421be80.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libpanic_unwind-fd8f4c1bda08875d.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libminiz_oxide-d66af3b5ec65e3da.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libadler-ebb256ae7a3587b1.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libobject-fa09704042ff3546.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libmemchr-73a2a4aa32d9a226.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libaddr2line-250a0a760fed3ff0.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libgimli-637b1d3a0abd873f.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/librustc_demangle-0738c6fcdc963add.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libstd_detect-84ceb3c600fc3b1d.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libhashbrown-fd1fdae801f7bcb4.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/librustc_std_workspace_alloc-b5e2e4cbfcdb336e.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libunwind-cf2831e94ac27ee8.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libcfg_if-48810a17a27c65d1.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/liblibc-fd9f15db1aa827b0.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/liballoc-1f4df83a30fc0432.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/librustc_std_workspace_core-7bab05d20330266a.rlib" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libcore-fbab469a77eb0bb9.rlib" "-Wl,--end-group" "/media/data/openwrt/staging_dir/host/lib/rustlib/mips64-openwrt-linux-musl/lib/libcompiler_builtins-b823d34493215920.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lc" "-Wl,--eh-frame-hdr" "-Wl,-znoexecstack" "-L" "/media/data/openwrt/staging_dir/host/lib64/rustlib/mips64-openwrt-linux-musl/lib" "-o" "/media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/libsuricata.so" "-Wl,--gc-sections" "-shared" "-Wl,-zrelro,-znow" "-Wl,-O1" "-nodefaultlibs"
= note: /usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: Relocations in generic ELF (EM: 8)
/usr/bin/ld: /media/data/openwrt/build_dir/target-mips64_octeonplus_64_musl/suricata-6.0.4/rust/target/mips64-openwrt-linux-musl/release/deps/suricata.suricata.956a1e7a-cgu.0.rcgu.o: error adding symbols: file in wrong format
collect2: error: ld returned 1 exit status
ish
(Jason Ish)
May 5, 2022, 10:59pm
3
So autogen.sh
and ./configure
is primarily for the C code, it doesn’t pass much of anything that it discovers over to Rust. You’ll probably have more luck just using ./configure
to generate a Cargo.toml
, which you have, then working with cargo build
and various build flags passed directly to Rust. Once we know what those are, then maybe we can add some help via ./configure
.
1 Like
Grommish
(Donald Hoskins)
May 5, 2022, 11:30pm
4
I am using ./configure
to generate all of the files and the Makefile
to actually build it.
For standard cargo calls on other packages, I pass
RUSTFLAGS = \
-C linker=$(TOOLCHAIN_DIR)/bin/$(TARGET_CC_NOCACHE) \
-C ar=$(TOOLCHAIN_DIR)/bin/$(TARGET_AR) \
-C target-cpu=$(RUSTC_CPU_TYPE)
ifneq ($(RUST_TARGET_FEATURES),)
RUSTFLAGS += -C target-feature=$(RUST_TARGET_FEATURES)
endif
to the function, but I’m not sure how/if tagging ./configure
or the make
invoke with that would pass them onto the internal cargo call Suricata uses. I can certainly try it though.
Something in the mixing of the C and rust isn’t being shared between, so I wanted to report it.
Grommish
(Donald Hoskins)
May 5, 2022, 11:38pm
5
It seems that if I prepend the make
invoke with the RUSTFLAGS=$(RUSTFLAGS)
, it does indeed work! Huzzah! It was just confusing since ./configure
was seeing and setting the correct values, it just wasn’t using them
Thanks @ish !