Lowlevel
Lowlevel => Lowlevel-Coding => Thema gestartet von: Martin Erhardt am 15. December 2012, 19:10
-
als ich mein OS kompilieren wollt kam:
console.c:84:5: error: ‘for’ loop initial declarations are only allowed in C99 mode
console.c:84:5: note: use option -std=c99 or -std=gnu99 to compile your code
als ich die params dann in der Makefile hatte, hat gcc sie nicht erkannt
ups falsches board
-
Hallo,
sicher, dass dein Makefile den GCC auch mit "-std=c99" aufruft?
Gruß,
Svenska
-
Hier ist meine Makefile
SRCS = $(shell find -name '*.[cS]')
OBJS = $(addsuffix .o,$(basename $(SRCS)))
CC = gcc
LD = ld
ASFLAGS = -m32
CFLAGS = -m32 -Wall -g -fno-stack-protector -I inc -std=c99
LDFLAGS = -melf_i386 -Tkernel.ld
kernel: $(OBJS)
$(LD) $(LDFLAGS) -o $@ $^
%.o: %.c
$(CC) $(CFLAGS) -c -o $@ $^
%.o: %.S
$(CC) $(ASFLAGS) -c -o $@ $^
clean:
rm $(OBJS)
.PHONY: clean