Skip to content
Snippets Groups Projects
Commit 164bf33c authored by Henrik Tjäder's avatar Henrik Tjäder
Browse files

Added notes about compiler, Cargo

parent ae85d424
No related branches found
No related tags found
No related merge requests found
...@@ -32,24 +32,51 @@ Software is the instructions for the ARM-processor, telling it which registers a ...@@ -32,24 +32,51 @@ Software is the instructions for the ARM-processor, telling it which registers a
## Compiler ## Compiler
Two of the main open-source compiler projects:
* GCC (Gnu Compiler Collection) Age: 31 years
* LLVM (originally: Low-Level Virtual Machine) Age: 16 years
In this course LLVM will be used to turn our source code, written in Rust,
into ready to run ARM instructions.
## Toolchain ## Toolchain
### Git ### Git
### Cargo-binutils Git is a distributed revision control system, most likely most of you have heard of it, maybe even used it.
It allows for convenient collaboration and handles everything from small one-file projects to massive
[projects](https://github.com/torvalds/linux).
```
rustup component add llvm-tools-preview
```
### GDB / LLDB ### GDB / LLDB
## Rust ## Rust
Installation Installation
https://rustup.rs/ https://rustup.rs/
### Cargo
The package manager for Rust
Taking care of dependencies, compilation and many other things.
For more information: https://doc.rust-lang.org/cargo/
### Cargo-binutils
#### Installation
```
rustup component add llvm-tools-preview
```
C
# Bare-metal programming # Bare-metal programming
## OpenOCD ## OpenOCD
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment