"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 ]
ok Combuster, I'm try to change GNUmakefile add -m32 optional in gcc that's work. its compiling pass many file but stuck in this error message(stuck in boot folder).
+ ld boot/boot
ld: i386 architecture of input file `obj/boot/boot.o' is incompatible with i386:x86-64 output
ld: i386 architecture of input file `obj/boot/main.o' is incompatible with i386:x86-64 output
ld: obj/boot/boot.o: file class ELFCLASS32 incompatible with ELFCLASS64
ld: final link failed: File in wrong format
gmake: *** [obj/boot/boot] Error 1
Use a linker script with OUTPUT_FORMAT(elf32-i386) and OUTPUT_ARCH(i386) - or follow Combuster's advice and use a 32 bit toolchain instead of a 64 bit one.
Are you srue you added -m32 to the compiler AND made sure the linker is creating a 32-bit file as well? It seems as if the error is caused by GCC creating 32-bit object files and the LD trying to use them to create a 64-bit executable.
When the chance of succeeding is 99%, there is still a 50% chance of that success happening.