コンパイラオプションをファイルに選択的に適用できますか?一部のファイルを一部のオプションでカバーしたいが、他のファイルはカバーしたくない。
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 に答える