kzinti wrote:
Link with libgcc.a. Someone explained it above.
You can find where it is with GCC:
Code:
gcc $(CFLAGS) -print-file-name=libgcc.a
I try linking against libgcc with "-lgcc" and I get the following:
Code:
/usr/local/lib/gcc/i686-elf/6.3.0/../../../../i686-elf/bin/ld: cannot find crt0.o: No such file or directory
/usr/local/lib/gcc/i686-elf/6.3.0/../../../../i686-elf/bin/ld: cannot find -lstdc++
/usr/local/lib/gcc/i686-elf/6.3.0/../../../../i686-elf/bin/ld: cannot find -lm
/usr/local/lib/gcc/i686-elf/6.3.0/../../../../i686-elf/bin/ld: cannot find -lc
What am I doing wrong? Why is it trying to pull in stdc++? I've passed "-nostdlib" and "-ffreestanding", so I don't see why this is happening.
EDIT: I've fixed it. Linker arguments were backwards.