diff options
| -rw-r--r-- | Makefile | 2 | ||||
| -rw-r--r-- | main.c | 9 | 
2 files changed, 7 insertions, 4 deletions
| @@ -48,7 +48,7 @@ kernel : $(OBJS) bootother.S user1 usertests userfs  	$(LD) -N -e start -Ttext 0x7000 -o bootother.out bootother.o  	$(OBJCOPY) -S -O binary bootother.out bootother  	$(OBJDUMP) -S bootother.o > bootother.asm -	$(LD) -Ttext 0x100000 -e main -o kernel $(OBJS) -b binary bootother user1 usertests userfs +	$(LD) -Ttext 0x100000 -e main0 -o kernel $(OBJS) -b binary bootother user1 usertests userfs  	$(OBJDUMP) -S kernel > kernel.asm  vectors.S : vectors.pl @@ -18,8 +18,11 @@ extern uint8_t _binary_userfs_start[], _binary_userfs_size[];  extern int use_console_lock;  // CPU 0 starts running C code here. -int -main() +// This is called main0 not main so that it can have +// a void return type.  Gcc can't handle functions named +// main that don't return int.  Really. +void +main0(void)  {    int i;    struct proc *p; @@ -89,7 +92,7 @@ main()  }  // Additional processors start here. -int  +void  mpmain(void)  {    cprintf("an application processor\n"); | 
