OSDev.org
https://forum.osdev.org/

___udivdi3
https://forum.osdev.org/viewtopic.php?f=1&t=10783
Page 2 of 2

Author:  kzinti [ Tue Feb 21, 2017 6:52 pm ]
Post subject:  Re: ___udivdi3

Link with libgcc.a. Someone explained it above.

You can find where it is with GCC:

Code:
gcc $(CFLAGS) -print-file-name=libgcc.a

Author:  zesterer [ Tue Feb 21, 2017 9:09 pm ]
Post subject:  Re: ___udivdi3

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.

Page 2 of 2 All times are UTC - 6 hours
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/