Miosix-oxidation
Welcome to miosix-oxidation! Rust experimental miosix support
Status
Many feature are currently being worked on, here is a list showing what you can/cannot use:
feature | status |
---|---|
core |
working |
std::time |
working |
std::alloc |
working |
std::fs |
working (mostly) |
std::io |
working |
panic! |
stops and does nothing |
main() |
no way |
miosix bindings | not yet |
everything else | doesn't work |
The rule of thumb is: if it shouldn't work on miosix, then it doesn't (even if the compiler says otherwise).
Also the currenlty supported targets:
thumbv7em-miosix-eabihf
Usage
To compile this test you will need to have a special version of rustc installed that supports miosix as a target.
-
Check rust for building requirements
-
Clone the source with
git
git clone https://github.com/Tazdevil971/rust.git cd rust
-
Copy the build configuration
cp config.toml.example config.toml
-
Build
./x.py build library/std
-
Load the new toolchain
rustup toolchain link miosix build/<target>/stage1
Where
<target>
is you host machine target -
Select the new toolchain as the default one
rustup default miosix
-
Go and experiment with the new compiler!
Structure
Here is a quick overview of the project components: