From 00b99c0830244c40426b7a8960e69a31388e68f3 Mon Sep 17 00:00:00 2001 From: postscriptum Date: Mon, 22 Dec 2025 21:44:49 +0200 Subject: [PATCH] add `rust-cross-compilation-with-cross-crate.gmi` --- public/uk/index.gmi | 1 + ...ust-cross-compilation-with-cross-crate.gmi | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 public/uk/rust-cross-compilation-with-cross-crate.gmi diff --git a/public/uk/index.gmi b/public/uk/index.gmi index 3763056..808221f 100644 --- a/public/uk/index.gmi +++ b/public/uk/index.gmi @@ -16,6 +16,7 @@ ### Нотатки +=> rust-cross-compilation-with-cross-crate.gmi 2025-12-22 Простий спосіб крос-компіляції Rust з cross => downgrade-to-iptables-ufw-from-firewalld-on-fedora-43.gmi 2025-12-18 Перехід на iptables/ufw з firewalld (Fedora 43) => recycled-resistors-asset.gmi 2025-12-11 Олдовий асет Б/В резисторів => diy-online-router-ups-based-on-interactive-pc-ups.gmi 2025-12-11 Саморобний online-UPS для роутера на базі 12В безперебійника для ПК diff --git a/public/uk/rust-cross-compilation-with-cross-crate.gmi b/public/uk/rust-cross-compilation-with-cross-crate.gmi new file mode 100644 index 0000000..0a50f49 --- /dev/null +++ b/public/uk/rust-cross-compilation-with-cross-crate.gmi @@ -0,0 +1,25 @@ +# Простий спосіб крос-компіляції Rust з cross + +Я довго мучився зі збіркою безпосередньо на сервері, постійно звільняючи там простір та додаючи swap. Згодом, мені це набридло і за пару хвилин віднайшов простий спосіб крос-компіляції з кейтом cross: + +=> https://crates.io/crates/cross + +Встановлення відбувається однією командою: + +``` bash +cargo install cross --git https://github.com/cross-rs/cross +``` + +Перш, як продовжити, варто почистити кеш збірки, що було згенеровано для поточної архітектури: + +``` bash +cargo clean +``` + +Збірка відбувається майже так само як з cargo, але засобами обгортки cross: + +``` bash +cross build --target armv7-unknown-linux-gnueabihf +``` +* при першому виконанні, буде автоматично встановлене контейнерне середовище для --target +* після завершення збірки, копіюємо бінарники (з теки target) на цільовий пристрій \ No newline at end of file