aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNic Gaffney <gaffney_nic@protonmail.com>2024-02-23 01:55:14 -0600
committerNic Gaffney <gaffney_nic@protonmail.com>2024-02-23 01:55:14 -0600
commitf8e7cb9034dac5e9834cd385251a57fb853d8998 (patch)
treeb2745da16f4c5e72701bb53928fc2f92341ebcff
parenta265979640a6b2bf20592c96ae1910b7dc93809a (diff)
downloadgftos-f8e7cb9034dac5e9834cd385251a57fb853d8998.tar.gz
Updated README to list dependencies
-rw-r--r--README.md54
-rwxr-xr-xconfigure.sh3
2 files changed, 28 insertions, 29 deletions
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
+```
diff --git a/configure.sh b/configure.sh
index a669fa7..e50d57c 100755
--- a/configure.sh
+++ b/configure.sh
@@ -32,3 +32,6 @@ make install-gcc
make install-target-libgcc
export PATH="$HOME/.local/opt/cross/bin:$PATH"
+
+echo "CONFIGURATION COMPLETE! Please add the following line to your .bashrc, .zshrc, or whatever you use."
+echo "export PATH=\$HOME/.local/opt/cross/bin:\$PATH"