Выборочное применение опций компилятора - PullRequest
0 голосов
/ 15 декабря 2011

можно ли выборочно применять параметры компилятора к моим файлам?Я хочу, чтобы некоторые файлы покрывались каким-либо параметром, но не другими файлами.

Ответы [ 2 ]

1 голос
/ 15 декабря 2011

Предполагается, что вы можете использовать Make files:

Это должно помочь вам начать: Обратите внимание, как -fopenmp добавляется только для source2.c

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
0 голосов
/ 15 декабря 2011

Конечно. Вы вызываете компилятор, и вы можете сказать ему, что вы хотите.

Некоторые инструменты могут добавлять некоторые ограничения; Visual Studio, насколько я знаю, позволяет задавать параметры только на уровне проекта. Но это искусственное ограничение инструмента (и я уверен, что есть способы обойти его - я просто не знаю их).

...