> 8l -T0x100000 -o 8.out boot.8 cpuid.8 floppy.8 gdt.8 halt.8 harddisk.8 
> interrupt.8 jmtrue.8 keyboard.8 memory.8 multitask.8 onlyin.8 pci.8 syscall.8 
> time.8 timer.8 tone.8 video.8 x86.8 ../port/libpgosport.a
> initnonport: incompatible type signatures 4c81a129(gdt.8) and 97da8762(x86.8) 
> for initgdt
> main: incompatible type signatures 4c81a129(timer.8) and 
> 951b2e20(../port/libpgosport.a(main)) for inittimer
> simplelang: np: not defined
> simplelang: apm: not defined
> simplelang: gdt: not defined

apoligies in advance for addressing the actual question.

the default CFLAGS were changed recently on sources.  the -T flag was added to 
the
defaults.  this adds type signatures to .$O files.  without -T type signatures 
are left
blank.  the linker expects either all the signatures for a particular symbol to 
match
or to be blank.  

incompatable signatures happen when the same external symbol is declared with
different types in different source files.  the linker is picky.  "uint" and 
"int" are not
compatable.

- erik


Reply via email to