On 8/23/10 6:19 AM, Andrew Guertin wrote: > I'm having trouble building the coreinfo payload, at the linking stage. > > I've checked out a fresh copy of the coreboot repository from svn. > I've then run the following commands: > > cd payloads/libpayload/ > make menuconfig (accepted defaults) > make > make install > cd ../coreinfo/ > make menuconfig (accepted defaults) > make > > I get the following error: > > /.../coreboot/payloads/coreinfo/build/cpuinfo_module.o: In function > `cpuinfo_module_init': > cpuinfo_module.c:(.text+0x496): undefined reference to `__udivdi3' > ../libpayload/install/libpayload/bin/../lib/libpayload.a(timer.o): In > function `get_cpu_speed': > timer.c:(.text+0x113): undefined reference to `__udivdi3' > ../libpayload/install/libpayload/bin/../lib/libpayload.a(timer.o): In > function `ndelay': > timer.c:(.text+0x1a5): undefined reference to `__udivdi3' > ../libpayload/install/libpayload/bin/../lib/libpayload.a(timer.o): In > function `udelay': > timer.c:(.text+0x202): undefined reference to `__udivdi3' > ../libpayload/install/libpayload/bin/../lib/libpayload.a(printf.o): In > function `print_number': > printf.c:(.text+0x335): undefined reference to `__umoddi3' > printf.c:(.text+0x370): undefined reference to `__udivdi3' > collect2: ld returned 1 exit status > make: *** > [/home/andrew/offtime/coreboot/coreboot/payloads/coreinfo/build/coreinfo.elf] > Error 1 > > > I'm running Gentoo Linux on an x86_64 machine with no 32-bit > libraries, and no kernel support for 32-bit binaries. System gcc is > 4.4.3, system ld is 2.20.1.20100303. > > Am I doing something wrong? How can I fix this? >
It's missing libgcc. You will at least need a 32bit libgcc in your system. I suggest you use the compiler build by the script in util/crossgcc/ however -- coreboot mailing list: [email protected] http://www.coreboot.org/mailman/listinfo/coreboot

