Skip to content

Latest commit

 

History

History
46 lines (37 loc) · 1.42 KB

compiling_skylightos.md

File metadata and controls

46 lines (37 loc) · 1.42 KB

Compiling SkylightOS

To acquire the required dependencies, run:

tools/resolve_deps.sh

List of available platforms for SkylightOS:

Architecture Configuration Name QEMU Executable Status
x86 (32-bit) ia32 qemu-system-i386 Work in Progress

Before building SkylightOS, first set the following config options in tools/build/config.py:

config=     # Build Configuration: chk = debug, fre = retail
arch=       # Build Architecture: see above for list of architectures.

Then to run the build, in the root directory, execute:

scons

or if you have scons installed via pip --user

~/.local/bin/scons

This will create ekernel.elf. This can be run directly in QEMU however it is recommended to package it inside of an ISO file with GRUB2 as the bootloader (for now).

To Create an ISO with GRUB2 pre-loaded, run the following command:

tools/build_iso.sh

If you see "kernel failed multiboot test!", this means the compiled kernel is linked incorrectly and will not work

To boot the kernel directly, run:

(qemu for your architecture) -kernel publish/sysroot/boot/ekernel.elf     

To boot the kernel via grub from the ISO, run:

(qemu for your architecture) -cdrom publish/skylight.iso                    

Congrats, you've successfully built SkylightOS.