mirror of
https://git.yoctoproject.org/poky
synced 2026-02-06 08:48:45 +01:00
Fix markdown style issues using markdownlint tool [1]: $ cat ./meta/recipes-devtools/rust/README-rust.md | mdl (stdin):1: MD002 First header should be a top level header (stdin):25: MD006 Consider starting bulleted lists at the beginning of the line (stdin):3: MD009 Trailing spaces (stdin):11: MD009 Trailing spaces (stdin):26: MD009 Trailing spaces (stdin):39: MD012 Multiple consecutive blank lines (stdin):32: MD032 Lists should be surrounded by blank lines (stdin):36: MD032 Lists should be surrounded by blank lines [1] https://github.com/markdownlint/markdownlint (From OE-Core rev: 62bade83dd6e021f11e9599a2699a1b202324f0f) Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
41 lines
1.4 KiB
Markdown
41 lines
1.4 KiB
Markdown
# Introduction
|
|
|
|
This provides the Rust compiler, tools for building packages (cargo), and
|
|
a few example projects.
|
|
|
|
## Building a rust package
|
|
|
|
When building a rust package in bitbake, it's usually easiest to build with
|
|
cargo using cargo.bbclass. If the package already has a Cargo.toml file (most
|
|
rust packages do), then it's especially easy. Otherwise you should probably
|
|
get the code building in cargo first.
|
|
|
|
Once your package builds in cargo, you can use
|
|
[cargo-bitbake](https://github.com/cardoe/cargo-bitbake) to generate a bitbake
|
|
recipe for it. This allows bitbake to fetch all the necessary dependent
|
|
crates, as well as a pegged version of the crates.io index, to ensure maximum
|
|
reproducibility. Once the Rust SDK support is added to oe-core, cargo-bitbake
|
|
may also be added to the SDK.
|
|
|
|
NOTE: You will have to edit the generated recipe based on the comments
|
|
contained within it
|
|
|
|
## Pitfalls
|
|
|
|
`TARGET_SYS` _must_ be different from `BUILD_SYS`. This is due to the way Rust
|
|
configuration options are tracked for different targets. This is the reason
|
|
we use the Yocto triples instead of the native Rust triples. See
|
|
[Add the ability to provide build flags for the build-script-build #3349](https://github.com/rust-lang/cargo/issues/3349)
|
|
|
|
## Dependencies
|
|
|
|
On the host:
|
|
|
|
* Any `-sys` packages your project might need must have RDEPENDs for
|
|
the native library.
|
|
|
|
On the target:
|
|
|
|
* Any `-sys` packages your project might need must have RDEPENDs for
|
|
the native library.
|