Speaker
Miguel Ojeda
Description
The Rust for Linux project is adding support for the Rust language to the Linux kernel. If the project is successful, and many drivers start to be written in Rust, then the Rust compiler and associated tools will become a key part of the kernel toolchain.
This raises many questions which we will try to answer and/or discuss with others:
- Which particular Rust toolchain (channels, versions, etc.) is needed for the kernel? What is
RUSTC_BOOTSTRAP
and why we need it? - Which components are required to build the kernel?
- Which parts of the standard library are required? Do they need to be compiled in a particular way?
- Which version of LLVM
rustc
requires? - What other tooling compiling the kernel is required? e.g.
bindgen
. - What tooling is required to build the documentation?
- How Linux distributions should distribute this Rust toolchain, e.g. should it be a separate one from the main Rust packages they may otherwise have?
- Should we provide pre-compiled Rust toolchains from kernel.org?
- Which architectures are supported so far by LLVM? Which ones may be soon supported?
- Is it possible to have GCC-built kernels with Rust support? To which degree is it supported?
- Which are the alternative Rust compilers and how advanced they are?, e.g.
gcc-rs
(the new GCC frontend for Rust),rustc_codegen_gcc
(the newrustc
backend for GCC) andmrustc
(the bootstrapping compiler).
I agree to abide by the anti-harassment policy | I agree |
---|
Primary author
Miguel Ojeda