Not sure if it's the right place to ask that question. If not, please redirect towards more appropriate.
I'm trying to compile DreamShell, which is now accessible through github, making retrieving the latest source code quite simple.
The goal is to familiarize myself with generation of binaries for Dreamcast, and to experiment with newer versions of DreamShell, in case they introduce functionalities or fixes which could help.
The project also contains a directory `build`, which stores pre-compiled files which seem destined for the `DS` folder.
But they are 3 years old, hence not produced with most recent code.
The version of my isoloader is v0.6.0, and I noticed that the source on github is branded v0.6.7, so it would be interesting to see if the recompilation effectively updates something.
Of course, I'm not successful.
Environment : Ubuntu Linux, recent (Eoan)
What has worked :
- cloning Dreamshell repository
- running sdk/toolchain/ubuntu_build.sh
- cloning (separately) KallistiOS
- compiling and installing KallistiOS
- compiling, running and testing simple Dreamcast programs built with KOS and emulated on lxdream
The KaillistiOS part is not necessary, but since DreamShell seems to be built on top of KOS, it seems a nice experience to have. Moreover, it proves that my setup is able to generate working Dreamcast binaries, which is a significant step.
I note that ubuntu_build.sh seems to set KOS_BASE and KOS_PORTS to a different path than KOS itself, but it doesn't seem to matter : both contents downloaded and compiled seem identical (and up to date).
After that, and after ensuring that environment variables are correctly set, I try to compile DreamShell itself using make.
Get the following error message :
```
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lcfg
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lmxml
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lSDL_1.2.13
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lSDL_image_1.2.12
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lSDL_ttf_2.0.11
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lSDL_rtf_0.1.1
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lSDL_gfx_2.0.25
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -lfreetype
/opt/toolchains/dc/sh-elf/lib/gcc/sh-elf/5.2.0/../../../../sh-elf/bin/ld: cannot find -llua_5.1.4-2
```
So, in essence, a bunch of dependencies are missing.
But I've got no idea how to find and deal with them. I was expecting ubuntu_build.sh to do this job, but apparently it doesn't. The project is pretty short on documentation, which makes it pretty hard to guess what could be the next step.