I've just tried to add this functions in Makefile.am, in clib_routines, as this form
clib_routines := htonl htons ntohl ntohs \ udivdi3 __udivdi3 __udivmoddi4 __umoddi3 \ __divdi3 \ __rel_iplt_start __rel_iplt_end \ __ffsdi2 \ ffs intel_startCPU local_bh_count local_irq_count \ _START _start etext _edata end _end # actually ld magic, not li$ But now It shows this error (attached file) Feels that It's necessary to define this functions but I don't know where these functions are located. How can I define this? 2018-07-03 13:00 GMT+02:00 <liberamenso10...@gmail.com>: > Thanks, I'll try it > > El Martes 3 de julio de 2018, Luca Dariz escribió: > > Hello! > > > > Il 28/06/2018 20:31, Almudena Garcia ha scritto: > > > Now the compiler gets the gnumach.o, but It returns another linker > error. > > > I attach logs also. > > > > > > > > > How can I solve this? > > > > From the last lines of the log > > > > ... > > ffs > > intel_startCPU > > local_bh_count > > local_irq_count > > ... > > > > these four functions are missing, see the code at lines 167-187 of > > Makefile.am, probably they require a SMP-aware version. > > > > Cheers > > Luca > > > > -- > Enviado desde mi Jolla >
ld --defsym _START_MAP=0x1000000 --defsym _START=_START_MAP+0xC0000000 -T '..'/i386/ldscript -o gnumach gnumach.o clib-routines.o gnumach.o: In function `cpu_start': /home/pruebas/GNUMach_SMP/build/../i386/i386/mp_desc.c:259: undefined reference to `intel_startCPU' /home/pruebas/GNUMach_SMP/build/../i386/i386/mp_desc.c:259: undefined reference to `intel_startCPU' /home/pruebas/GNUMach_SMP/build/../i386/i386/mp_desc.c:259: undefined reference to `intel_startCPU' gnumach.o: In function `show': /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:457: undefined reference to `local_irq_count' /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:457: undefined reference to `local_irq_count' /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:459: undefined reference to `local_bh_count' /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:459: undefined reference to `local_bh_count' gnumach.o: In function `__global_cli': /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:628: undefined reference to `local_irq_count' gnumach.o: In function `wait_on_irq': /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:523: undefined reference to `local_bh_count' /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:543: undefined reference to `local_bh_count' gnumach.o: In function `synchronize_bh': /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:561: undefined reference to `local_bh_count' /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:561: undefined reference to `local_irq_count' gnumach.o: In function `__global_sti': /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:637: undefined reference to `local_irq_count' gnumach.o: In function `__global_save_flags': /home/pruebas/GNUMach_SMP/build/../linux/dev/arch/i386/kernel/irq.c:661: undefined reference to `local_irq_count' Makefile:4113: recipe for target 'gnumach' failed make: *** [gnumach] Error 1