diff --git a/post/prostyy-sposib-kros-kompiliatsiyi-rust-z-cross.md b/post/prostyy-sposib-kros-kompiliatsiyi-rust-z-cross.md new file mode 100644 index 0000000..2cefa81 --- /dev/null +++ b/post/prostyy-sposib-kros-kompiliatsiyi-rust-z-cross.md @@ -0,0 +1,23 @@ +# Простий спосіб крос-компіляції 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 --release --target armv7-unknown-linux-gnueabihf +``` +* при першому виконанні, буде автоматично встановлене контейнерне середовище для `--target` +* після завершення збірки, копіюємо бінарники (з теки `target/armv7-unknown-linux-gnueabihf`) на цільовий пристрій \ No newline at end of file