diff options
author | tcsullivan <tullivan99@gmail.com> | 2018-12-02 14:18:36 -0500 |
---|---|---|
committer | tcsullivan <tullivan99@gmail.com> | 2018-12-02 14:18:36 -0500 |
commit | 02d0bbc0a1d04afa97e560c2707129909aaf2625 (patch) | |
tree | 64a8d25fc3151dbf5a91e5c434a197b61b6b0b17 /arm-stmos/README.md | |
parent | 42eff60714a32942b307d6b139aa400ca0df296a (diff) |
working toochain build script
Diffstat (limited to 'arm-stmos/README.md')
-rw-r--r-- | arm-stmos/README.md | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/arm-stmos/README.md b/arm-stmos/README.md new file mode 100644 index 0000000..ba234f7 --- /dev/null +++ b/arm-stmos/README.md @@ -0,0 +1,28 @@ +# The arm-stmos toolchain + +A special binutils/gcc toolchain is necessary to build stmos and associated +programs. For convenience, a bash script has been written to attempt to automate +the majority of the compilation/installation process. This process is based of +off various tutorials from [osdev.org](wiki.osdev.org). + +Some programs are required for the build process. A list can be found [here] +(https://wiki.osdev.org/GCC_Cross-Compiler#Installing_Dependencies). Once +installed, just run the script: +``` +./create-toolchain.sh +``` +It should be safe to re-run the script, if necessary. + +After successful installation, be sure to add the toolchain to your path ($HOME +/arm-stmos/bin). Then, follow these steps to build pdclib and the crt0: +* Cd to src/pdclib +* Make sure the Makefile does not have the ```-g``` flag set under CFLAGS +* Build pdclib (make) +* Copy pdclib.a to ~/arm-stmos/lib/gcc/arm-stmos/8.2.0/libc.a +* Add the ```-g``` flag to CFLAGS in the Makefile; Rebuild pdclib +* Copy pdclib.a to ~/arm-stmos/lib/gcc/arm-stmos/8.2.0/libg.a +* Cd to the stmos root directory; run ```make crt``` +* Copy crt0.o ~/arm-stmos/lib/gcc/arm-stmos/8.2.0/crt0.o + +Now everything should be ready. Build stmos, run it, hope it works. + |