我想尝试GCC整个程序的优化。为此,我必须一次将所有C文件传递到编译器前端。但是,我使用makefiles来自动执行构建过程,并且在makefile魔术方面我不是专家。

如果我只想调用一个GCC进行编译(甚至链接),该如何修改makefile?

供引用-我的makefile如下所示:

LIBS  = -lkernel32 -luser32 -lgdi32 -lopengl32
CFLAGS = -Wall

OBJ = 64bitmath.o    \
      monotone.o     \
      node_sort.o    \
      planesweep.o   \
      triangulate.o  \
      prim_combine.o \
      welding.o      \
      test.o         \
      main.o

%.o : %.c
    gcc -c $(CFLAGS) $< -o $@

test: $(OBJ)
    gcc -o $@ $^ $(CFLAGS) $(LIBS)

最佳答案

LIBS  = -lkernel32 -luser32 -lgdi32 -lopengl32
CFLAGS = -Wall

# Should be equivalent to your list of C files, if you don't build selectively
SRC=$(wildcard *.c)

test: $(SRC)
    gcc -o $@ $^ $(CFLAGS) $(LIBS)

关于c - makefiles-一次编译所有c文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/170467/

10-11 22:43