Also das einzigste was nicht funtzt ist das ld'en
das objcopy hab ich jetzt mal raus.
ckernel.obj: file format pe-i386
Sections:
Idx Name Size VMA LMA File off Algn
0 .text 00000030 00000000 00000000 000000b4 2**2
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
1 .data 00000000 00000000 00000000 00000000 2**2
ALLOC, LOAD, DATA
2 .bss 00000000 00000000 00000000 00000000 2**2
ALLOC
3 .rdata 00000018 00000000 00000000 000000e4 2**2
CONTENTS, ALLOC, LOAD, READONLY, DATA
das ist die ausgabe von gcc
aber irgendwie gehts nicht, da er meint dass die ausgabe kein PE Output File wäre.
link.txt OUTPUT_FORMAT("binary")
INPUT(kernel32.obj ckernel.obj)
ENTRY(start)
SECTIONS
{
.text 0x10200 : {
code = .; _code = .; __code = .;
*(.text)
. = ALIGN(1);
}
.data : {
data = .; _data = .; __data = .;
*(.data)
. = ALIGN(1);
}
.bss :
{
bss = .; _bss = .; __bss = .;
*(.bss)
. = ALIGN(1);
}
end = .; _end = .; __end = .;
}