编译器选项可以选择性地应用于我的文件吗?我希望某些文件被某个选项覆盖,而不是其他文件。
问问题
70 次
2 回答
1
猜测您可能正在使用 Make 文件:
这应该可以帮助您入门:请注意如何仅为 source2.c 添加 -fopenmp
CC=gcc
SRC=source1.c source2.c
OBJ=$(patsubst %.c,%.o,$(SRC))
EXE=source1.exe
FLAGS= -g -O2
source2.o: FLAGS+=-fopenmp
all: $(EXE)
$(EXE): $(OBJ)
$(CC) -o $@ $^ $(FLAGS)
%.o: %.c
$(CC) -c -o $@ $^ $(FLAGS)
clean:
rm $(EXE)$
make -Bsn 的输出:
gcc -o source1.o source1.c -g -O2
gcc -o source2.o source2.c -g -O2 -fopenmp
gcc -o source1 source1.o source2.o -g -O2
于 2011-12-15T09:29:38.453 回答
0
当然。你调用编译器,你可以告诉它你想要什么。
一些工具可能会增加一些限制;据我所知,Visual Studio 只允许在项目级别指定选项。但这是对工具的人为限制(我确信有办法绕过它——我只是不知道它们)。
于 2011-12-15T09:00:30.817 回答