雖然與此生成的文件中的gcc編譯我收到的錯誤GCC無效的命令行選項
cannot specify -o with -c, -S or -E with multiple files"
現在我想它有事情做,試圖編譯相同文件兩次,但我不知道如何。
assembler : main.o assembler.o utils.o
gcc -g -ansi -Wall -pedantic -lm main.o assembler.o utils.o -o assembler
main.o : main.c assembler.h utils.h
gcc -c -ansi -Wall -pedantic -lm main.c assembler.h utils.h -o main.o
assembler.o : assembler.c
gcc -c -ansi -Wall -pedantic -lm assembler.c -o assembler.o
utils.o : utils.c structs.h
gcc -c -ansi -Wall -pedantic -lm utils.c structs.h -o utils.o
文件都包含這樣的:
structs.h is included in utils.c,
utils.c is included in utils.h,
utils.h is included in assembler.c,
assembler.c is included in assembler.h,
assembler.h is included in main.c.
(:不知道爲什麼,它讓我做的代碼生成...
指定多個源文件時纔有意義被調用。 – EOF
你不會「編譯」頭文件,將它們從compil命令中取出,但它們確實是依賴文件 – Guiroux
順便提一下:_utils.c包含在utils.h_中,_assembler.c包含在assembler.h_中並不真正使感。 .h文件包含在.c文件中,但不是其他方式。 –