Update README for new build process

This commit is contained in:
Curle 2020-08-27 01:57:59 +01:00 committed by Curle
parent aba82eaacb
commit b6554e8501
Signed by: TheCurle
GPG Key ID: 5942F13718443F79

View File

@ -31,17 +31,17 @@ Chroma can be built on Windows or Linux.
### Windows ### Windows
I (Curle) use Windows for developing Chroma. I (Curle) use Windows for developing Chroma.
Simply have an [x86_64-elf-gcc](https://github.com/lordmilko/i686-elf-tools) and ld (included!) in your PATH, and run setup.bat. Simply have an [x86_64-elf-gcc](https://github.com/lordmilko/i686-elf-tools) and ld (included!) in your PATH, run `cmake` in the source directory, then `make`.
You will need to use WSL to generate the iso; copy the created kernel.elf file to iso/boot/ as `initrd`, and run `grub-mkrescue -o chroma.iso iso/`. It will compile the kernel, and create an OS image with `mkbootimg`.
A new system is in the works for creating this ISO natively on Windows.
The generated ISO works in QEMU, or on a physical test device (unlike a lot of other hobby OSes!)
### Linux ### Linux
The system for linux is a lot easier, but you *do* need an x86_64-elf-gcc cross compiler. You can get one from the AUR on Arch-based distros (like Manjaro), or make one yourself using [the OSDev Wiki guide](https://wiki.osdev.org/GCC_Cross-Compiler) The system for linux is a lot easier, but you *do* need an x86_64-elf-gcc cross compiler. You can get one from the AUR on Arch-based distros (like Manjaro), or make one yourself using [the OSDev Wiki guide](https://wiki.osdev.org/GCC_Cross-Compiler)
Simply run the `init.sh` to generate a makefile, then `make` to create the kernel.elf file. Simply run the `init.sh` to generate a makefile, then `make` to create the image file.
Same thing applies as Windows now - copy the kernel.elf file to iso/boot/ as `initrd` and run `grub-mkrescue -o chroma.iso iso/`.
The generated IMG works in QEMU, or on a physical test device (unlike a lot of other hobby OSes!)
This means you can use any emulator or hypervisor to run it.