Quetzalcoatlus
October 24th, 2008, 18:17
I'm interested in developing a game (and possibly more later) for Dreamcast. My current goal is to just get something to display on the screen. The tutorial http://files.frashii.com/~sp00nz/Doom/files/BlackAura/tutes/ seems good for that.
However, I cannot seem to get the KOS environment to set up. I've tried it on multiple OS X machines, and most recently, my Linux server. I keep getting the same errors. I've been using the set-up tutorial from http://www.dreamcast-scene.com/index.php/Main/LinuxToolchain and have been trying to compile my own toolchain as it seems to be required to get everything to work.
(I will describe my progress on Ubuntu Linux, as it is what I used most recently)
First I apt-get installed all the technologies listed at the top to make sure I had them all. (My GCC version is at 4.2.3). I created a directory in ~ called dc, went into it, and ran:
$ svn co https://cadcdev.svn.sourceforge.net/svnroot/cadcdev/kos
$ svn co https://cadcdev.svn.sourceforge.net/svnroot/cadcdev/kos-ports
Once the checkouts were done, I went into kos/utils/dc-chain and ran the download and unpack shell scripts. I edited the Makefile, so the three lines to change became:
sh_prefix := /home/cmiller/dc/$(sh_target)
arm_prefix := /home/cmiller/dc/$(arm_target)
kos_root="/home/cmiller/dc"
(cmiller is my username)
Then I checked my GCC version with gcc --version and found that I was using 4.2.3, so I ran make CC=gcc-3.4 to make the environment. What happened was:
cmiller@chance:~/dc/kos/utils/dc-chain$ make CC=gcc-3.4
cd gcc-3.4.6; patch -p1 < /home/cmiller/dc/kos/utils/dc-chain/patches/gcc-3.4.6.diff
patching file gcc/config/sh/kos.h
patching file gcc/config/sh/t-sh
patching file gcc/config.gcc
patching file libstdc++-v3/config/cpu/generic/atomicity.h
patching file libstdc++-v3/config/cpu/sh4/atomicity.h
patching file libstdc++-v3/config/cpu/sh4/atomic_word.h
patching file libstdc++-v3/configure
patching file libstdc++-v3/crossconfig.m4
cd newlib-1.12.0; patch -p1 < /home/cmiller/dc/kos/utils/dc-chain/patches/newlib-1.12.0-kos.diff
patching file config-ml.in
patching file newlib/configure.host
patching file newlib/libc/sys/sh/ftruncate.c
patching file newlib/libc/sys/sh/sys/_types.h
patching file newlib/libc/sys/sh/sys/lock.h
patching file newlib/libc/sys/sh/syscalls.c
patching file newlib/libc/sys/sh/trap.S
patching file newlib/libc/sys/sh/truncate.c
+++ Building binutils-2.17 to build-binutils-sh-elf-2.17...
mkdir -p build-binutils-sh-elf-2.17
> /home/cmiller/dc/kos/utils/dc-chain/logs/build-binutils-sh-elf-2.17.log
cd build-binutils-sh-elf-2.17; ../binutils-2.17/configure --target=sh-elf --prefix=/home/cmiller/dc/sh-elf >> /home/cmiller/dc/kos/utils/dc-chain/logs/build-binutils-sh-elf-2.17.log 2>&1
make: *** [build-sh4-binutils] Error 1
I checked logs/build-binutils-sh-elf-2.17.log and found:
creating cache ./config.cache
checking host system type... x86_64-unknown-linux-gnu
checking target system type... sh-unknown-elf
checking build system type... x86_64-unknown-linux-gnu
checking for a BSD compatible install... /usr/bin/install -c
checking whether ln works... yes
checking whether ln -s works... yes
checking for gcc... gcc-3.4
checking whether the C compiler (gcc-3.4 ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
If I try to run make again, I get prompted with:
cd gcc-3.4.6; patch -p1 < /home/cmiller/dc/kos/utils/dc-chain/patches/gcc-3.4.6.diff
The next patch would create the file gcc/config/sh/kos.h,
which already exists! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file gcc/config/sh/kos.h.rej
patching file gcc/config/sh/t-sh
Reversed (or previously applied) patch detected! Assume -R? [n]
Over and over again and no errors are logged.
Sorry for the long post, but does anyone have any suggestions? Is there something blatantly obvious I have missed? I get very similar errors on both of my Macs.
EDIT:
I have tried this both logged in as a user and as root, and I get the same errors.
However, I cannot seem to get the KOS environment to set up. I've tried it on multiple OS X machines, and most recently, my Linux server. I keep getting the same errors. I've been using the set-up tutorial from http://www.dreamcast-scene.com/index.php/Main/LinuxToolchain and have been trying to compile my own toolchain as it seems to be required to get everything to work.
(I will describe my progress on Ubuntu Linux, as it is what I used most recently)
First I apt-get installed all the technologies listed at the top to make sure I had them all. (My GCC version is at 4.2.3). I created a directory in ~ called dc, went into it, and ran:
$ svn co https://cadcdev.svn.sourceforge.net/svnroot/cadcdev/kos
$ svn co https://cadcdev.svn.sourceforge.net/svnroot/cadcdev/kos-ports
Once the checkouts were done, I went into kos/utils/dc-chain and ran the download and unpack shell scripts. I edited the Makefile, so the three lines to change became:
sh_prefix := /home/cmiller/dc/$(sh_target)
arm_prefix := /home/cmiller/dc/$(arm_target)
kos_root="/home/cmiller/dc"
(cmiller is my username)
Then I checked my GCC version with gcc --version and found that I was using 4.2.3, so I ran make CC=gcc-3.4 to make the environment. What happened was:
cmiller@chance:~/dc/kos/utils/dc-chain$ make CC=gcc-3.4
cd gcc-3.4.6; patch -p1 < /home/cmiller/dc/kos/utils/dc-chain/patches/gcc-3.4.6.diff
patching file gcc/config/sh/kos.h
patching file gcc/config/sh/t-sh
patching file gcc/config.gcc
patching file libstdc++-v3/config/cpu/generic/atomicity.h
patching file libstdc++-v3/config/cpu/sh4/atomicity.h
patching file libstdc++-v3/config/cpu/sh4/atomic_word.h
patching file libstdc++-v3/configure
patching file libstdc++-v3/crossconfig.m4
cd newlib-1.12.0; patch -p1 < /home/cmiller/dc/kos/utils/dc-chain/patches/newlib-1.12.0-kos.diff
patching file config-ml.in
patching file newlib/configure.host
patching file newlib/libc/sys/sh/ftruncate.c
patching file newlib/libc/sys/sh/sys/_types.h
patching file newlib/libc/sys/sh/sys/lock.h
patching file newlib/libc/sys/sh/syscalls.c
patching file newlib/libc/sys/sh/trap.S
patching file newlib/libc/sys/sh/truncate.c
+++ Building binutils-2.17 to build-binutils-sh-elf-2.17...
mkdir -p build-binutils-sh-elf-2.17
> /home/cmiller/dc/kos/utils/dc-chain/logs/build-binutils-sh-elf-2.17.log
cd build-binutils-sh-elf-2.17; ../binutils-2.17/configure --target=sh-elf --prefix=/home/cmiller/dc/sh-elf >> /home/cmiller/dc/kos/utils/dc-chain/logs/build-binutils-sh-elf-2.17.log 2>&1
make: *** [build-sh4-binutils] Error 1
I checked logs/build-binutils-sh-elf-2.17.log and found:
creating cache ./config.cache
checking host system type... x86_64-unknown-linux-gnu
checking target system type... sh-unknown-elf
checking build system type... x86_64-unknown-linux-gnu
checking for a BSD compatible install... /usr/bin/install -c
checking whether ln works... yes
checking whether ln -s works... yes
checking for gcc... gcc-3.4
checking whether the C compiler (gcc-3.4 ) works... no
configure: error: installation or configuration problem: C compiler cannot create executables.
If I try to run make again, I get prompted with:
cd gcc-3.4.6; patch -p1 < /home/cmiller/dc/kos/utils/dc-chain/patches/gcc-3.4.6.diff
The next patch would create the file gcc/config/sh/kos.h,
which already exists! Assume -R? [n]
Apply anyway? [n]
Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file gcc/config/sh/kos.h.rej
patching file gcc/config/sh/t-sh
Reversed (or previously applied) patch detected! Assume -R? [n]
Over and over again and no errors are logged.
Sorry for the long post, but does anyone have any suggestions? Is there something blatantly obvious I have missed? I get very similar errors on both of my Macs.
EDIT:
I have tried this both logged in as a user and as root, and I get the same errors.