Someone is looking at contributing to the ApolloOS project, but they want to use a Windows environment to do it. They've setup NASM and MinGW (moving the binaries to the C:\Windows directory) and I've worked with them to provide a batch file that should actually work... (I'm not sure how we'll go about mounting the floppy image to add the kernel executable, I assume that may need a third-party app)
However, we're coming across a bit of a problem. Each time he runs it he gets:
Code: Select all
gcc: installation problem, cannot exec 'cc1' : No such file or directory
There seems to be nothing wrong with the batch file (code included below). Have we done something wrong during the installation?
Code: Select all
@echo off
echo Now assembling, compiling, and linking your kernel:
cd src
nasm -f elf -o start.o start.asm
rem Compile C sources using gcc...
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o kernel.o -c kernel.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o scrn.o -c scrn.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o gdt.o -c gdt.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o idt.o -c idt.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o isrs.o -c isrs.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o irq.o -c irq.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o timer.o -c timer.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -fleading-underscore -I./include -o kb.o -c kb.c
rem This links all your files. Remember that as you add *.o files, you need to
rem add them after start.o. If you don't add them at all, they won't be in your kernel!
ld -T link.ld -o kernel.x start.o kernel.o scrn.o gdt.o idt.o isrs.o irq.o timer.o kb.o
echo Cleaning up object files...
del *.o
echo Done!
pause