Hallo!
Ik ben bezig met een OS maken. Ik heb al een bootloader, en nu wil ik mijn kernel linken. De kernel bestaat uit een ASM bestand (k_entry.asm) en een aantal C files. Het compilen lukt maar het linken niet. Dit staat in mijn build.bat file (bij lijn 4 gaat het fout):
Mijn linkerscript is:
De output van het batch bestand is:
Ik ben bezig met een OS maken. Ik heb al een bootloader, en nu wil ik mijn kernel linken. De kernel bestaat uit een ASM bestand (k_entry.asm) en een aantal C files. Het compilen lukt maar het linken niet. Dit staat in mijn build.bat file (bij lijn 4 gaat het fout):
code:
1
2
3
4
5
| @echo off gcc -c kernel.c -o kernel.o nasm -f aout k_entry.asm -o k_entry.o ld kernel.ld kernel.o k_entry.o pause |
Mijn linkerscript is:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| OUTPUT_FORMAT("binary") ENTRY(start) SECTIONS { .text 0xFF800000 : { *(.text) } .data : { *(.data) } .bss : { *(.bss) } } |
De output van het batch bestand is:
code:
1
2
| k_entry.o: file not recognized: File format not recognized Druk op een toets om door te gaan. . . |
- Ik gebruik GCC voor windows (geen DJGPP).
- De kernel moet kernel.bin worden, maar het linken mislukt.