From c06b131b21e5173afe93e2ba803374f3da906932 Mon Sep 17 00:00:00 2001 From: secXsQuared Date: Sat, 17 Feb 2018 23:22:46 -0500 Subject: [PATCH] Update README.md --- README.md | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 0f78e3f..66d4a5a 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,34 @@ -My Hobby x86-64 OS kernel. - # Building ### Environment -Any Linux distribution / Bash for Windows + GCC cross compiler. +Linux distribution / Bash for Windows. ### Required packages -Please use "sudo apt-get install" to install these: -nasm, xorriso, binutils-mingw-w64, gcc-mingw-w64, mtools +NASM (sudo apt-get install nasm) +GCC cross compiler (see the next section) -### Cross-compiler -##### Method 1 - Compile yourself. -Just follow the instructions here: https://wiki.osdev.org/GCC_Cross-Compiler +### GCC cross compiler +##### Method 1 - Compile from GCC source. -Remember to set the "TARGET" to x86_64-elf instead of i686-elf and build libgcc without redzone https://wiki.osdev.org/Libgcc_without_red_zone. +Follow the instructions from https://wiki.osdev.org/GCC_Cross-Compiler + +Set the "TARGET" to "x86_64-elf" instead of "i686-elf" and build libgcc without redzone https://wiki.osdev.org/Libgcc_without_red_zone. ##### Method 2 - Precompiled binaries + VERSION: GCC 7.3 + Binutils 2.30 HOST: x86_64-pc-linux-gnu CONFIGURED WITH: --target=x86_64-elf --disable-nls --enable-languages=c,c++ --without-headers - 1. Download "cross.tar.gz" from the Github release page. - 2. Run "tar -xvf cross.tar.gz -C $HOME/opt/cross" ### Compiling Run "make all" in the root directory -The makefile generates secxkrnl.iso (kernel image), secxkrnl.elf(kernel executable), secxkrnl.dmp(kernel disassembly) at the end. +The makefile generates secxkrnl.elf(kernel executable), secxkrnl.dmp(kernel disassembly). To clean all generated files, run "make clean"