• Stars
    star
    280
  • Rank 147,492 (Top 3 %)
  • Language
    Rust
  • License
    MIT License
  • Created almost 6 years ago
  • Updated almost 6 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Ferrugo is a JVM implementation written in Rust

Ferrugo

CircleCI codecov

Ferrugo is a JVM implementation written in Rust.

This is now just a toy project (for me/you to learn how it works).

Current Status

  • Able to run some classfiles. see ./examples/(Hello|BigInt|SmallPT).class
  • Partly support for JIT compiling powered by LLVM
  • Aiming readable code (this is the hardest, yes)

Building from Source

Building on Linux

  1. Install Rust

Run the command below and follow the onscreen instructions.

curl https://sh.rustup.rs -sSf | sh
  1. Use Rust Nightly
rustup override set nightly
  1. Install dependencies
  • LLVM 6.0
  • (Other packages as necessary...)
# e.g. Ubuntu or Debian
apt-get install llvm-6.0
  1. Test
cargo test
  1. Build and Run
cargo run --release examples/Hello.class

Building on other platforms

I don't know. Maybe almost the same as Linux.