a0f5ce87978d007a753b162a94577d1f164a5d85
FoundryOS
Cloning
git clone https://git.zxq5.dev/OsDev/FoundryOS.git
Build dependencies
- latest rust nightly release
- all necessary rust components installed
- xorriso: creates ISO images to be booted from.
- (Optional / Recommended) qemu: to run the kernel. (this may be packaged as qemu-desktop)
- (Optional) GDB: for debugging the kernel.
rustup update
rustup override set nightly
rustup component add rust-src
rustup component add llvm-tools-preview
Building & Running in qemu
cargo run
Running in GDB
USE_GDB=1 cargo run
Build errors
If you see a qemu error like this:
qemu-system-x86_64: -drive if=pflash,format=raw,readonly=on,file=<...>/OVMF_CODE.fd: Could not open '<...>/OVMF_CODE.fd': No such file or directory
Simply delete the ./build directory and try to rebuild the program. Using the runner script or cargo run will download the required files for you, this is because the script only checks for the presence of one file and not the VARS file.
Alternatively, you may disable using a UEFI firmware with qemu like so:
USE_LEGACY_BIOS=1 cargo run
Debugging
See debugging for some help with this, including commands to help with disassembly.
If you have any other issues, feel free to create an issue or a PR.
Description
Languages
Rust
92.4%
Shell
7.5%
Assembly
0.1%