Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Hi,
I want to port my kernel to x86-64, so i built gcc/bintuils with "x86_64-pc-elf" support according to the wiki. Now my problem is that my kernel grows > 1MB. It seems that it depends on the physical address I link to. If I link it to say 0x100000 it has > 1MB if i link it to 0x1 it has only several KB's.
Has someone an idea how to fix it?
GCC-version 4.2.2 (tried 4.2.1 too same error)/ binutils-version 2.18 built with Cygwin 3.4.4 on Vista64
You currently seem to tell LD to add bytes rather than telling where it is to be loaded.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
Well, I fixed the size problem by adding -r (relocatable) to ld now.
But my code doesn't boot either. I don't know if my bootloader (grub + 64-patch) is broken or there's something else wrong with the output .
Maybe someone has got a working grub with elf64?
EDIT: Should be GRUB, because with out loading the kernel the shell doesn't work too.