From f8e7cb9034dac5e9834cd385251a57fb853d8998 Mon Sep 17 00:00:00 2001 From: Nic Gaffney Date: Fri, 23 Feb 2024 01:55:14 -0600 Subject: Updated README to list dependencies --- README.md | 54 +++++++++++++++++++++++++----------------------------- 1 file changed, 25 insertions(+), 29 deletions(-) (limited to 'README.md') diff --git a/README.md b/README.md index d9d7ca5..e5236b5 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,31 @@ # Basic setup for OSdev These files are well commented and are meant to remind you how to actually develop an OS. read from osdev.org to learn more. -## quickstart -```sh -mkdir -p $HOME/.local/opt -mkdir -p $HOME/.local/opt/cross -mkdir -p $HOME/.local/src -export PREFIX="$HOME/.local/opt/cross" -export TARGET=i686-elf -export PATH="$PREFIX/bin:$PATH" - -cd $HOME/.local/src -curl https://ftp.gnu.org/gnu/binutils/binutils-2.41.tar.xz | tar -xJ -mkdir build-binutils -cd build-binutils -../binutils-2.41/configure --target=$TARGET --prefix="$PREFIX" --with-sysroot --disable-nls --disable-werror -make -make install - -cd $HOME/.local/src -command -v -- $TARGET-as || echo $TARGET-as is not in the PATH -curl https://ftp.gnu.org/gnu/gcc/gcc-13.2.0/gcc-13.2.0.tar.xz | tar -xJ -mkdir build-gcc -cd build-gcc -../gcc-13.2.0/configure --target=$TARGET --prefix="$PREFIX" --disable-nls --enable-languages=c,c++ --without-headers -make all-gcc -make all-target-libgcc -make install-gcc -make install-target-libgcc +## Requirements +- git +- make +- tar +- xz +- curl +- C compiler (preferrably gcc) +- texinfo +- gmp +- mpfr +- libmpc +- nasm +- xorriso +- mtools +- qemu (to run) +- bochs (for testing) -export PATH="$HOME/.local/opt/cross/bin:$PATH" +## Install dependencies +Void: +```sh +$ xbps-install git make tar xz curl gcc texinfo gmp mpfr libmpc nasm xorriso mtools ``` -You can also run `./configure.sh`, which contains the above commands. +## Configure and build +```sh +$ ./configure.sh +$ make +``` -- cgit v1.2.3