├── helloworld // hello, world demo
└── stdlib // Rust call c libs demo
- Rust 1.39+ + LLVM 10.0
- use llvmenv to Manage multiple LLVM/Clang builds
- Rust LLVM wrapper use inkwell
- generated LLVM IR code see in main.ll
brew install cmake ninja
Homebrew 11
brew install llvm
cargo install llvmenv
usage
llvmenv init
llvmenv entries
local-llvm 10.0.0
about 1.5 hours
in my MBP 2018
Add local llvm for build to: `$XDG_CONFIG_HOME/llvmenv/entry.toml
docs: https://docs.rs/llvmenv/0.3.0/llvmenv/entry/index.html
[local-llvm]
path = "/path/to/your/src"
target = ["X86"]
```
**build**
```
llvmenv build-entry local-llvm
```
### run & build
```
LLVM_SYS_101_PREFIX=$HOME/llvm/llvm-10.0.1.src/build cargo build
LLVM_SYS_101_PREFIX=$HOME/llvm/llvm-10.0.1.src/build cargo run