2019-12-28 13:47:10 +01:00
|
|
|
run_kernel: compile_kernel
|
|
|
|
qemu-system-i386 -kernel target/kernel.bin
|
|
|
|
|
|
|
|
compile_kernel:
|
|
|
|
i686-elf-as kernel/boot.s -o target/boot.o
|
|
|
|
i686-elf-gcc -c kernel/kernel.c -o target/kernel.o -std=gnu99 -ffreestanding -O2 -Wall -Wextra
|
|
|
|
i686-elf-gcc -T kernel/linker.ld -o target/kernel.bin -ffreestanding -O2 -nostdlib target/boot.o target/kernel.o -lgcc
|
2019-12-27 16:17:28 +01:00
|
|
|
|
2019-12-28 13:04:53 +01:00
|
|
|
compile_bootloader:
|
|
|
|
rm -rf target/boot.bin
|
|
|
|
nasm -f bin -o target/boot.bin bootloader/main.asm
|
2019-12-27 16:17:28 +01:00
|
|
|
|
2019-12-28 13:47:10 +01:00
|
|
|
run_bootloader: compile_bootloader
|
2019-12-28 13:04:53 +01:00
|
|
|
qemu-system-x86_64 -drive format=raw,file=target/boot.bin -drive format=raw,file=target/kernel.bin -monitor stdio
|