Как создать каталоги из make-файлов? - PullRequest
0 голосов
/ 17 июня 2011

Не могли бы вы помочь мне со следующим кодом, который я написал?

VPATH= balll mall fall
OBJECTS= objj/goka.o objj/foka.o objj/hoka.o
exec/gola: $(OBJECTS)
    gcc $^  -o  $@  
$(OBJECTS): objj/%.o : %.c
    gcc -c  $<  -o  $@  

Что я хочу сделать: у меня нет каталога exec и каталога obj, и я хочу, чтобы они создавались во времясоставление файла и сохранение этих файлов в соответствующих каталогах.Могу ли я сделать это?Создание каталога exec и указание gcc сохранить целевой файл gola в каталоге exec и то же самое с целевыми файлами.Есть ли какая-нибудь команда, чтобы справиться с этим?

Ответы [ 2 ]

3 голосов
/ 17 июня 2011

Попробуйте предварительные условия только для заказа. (См. Руководство по изготовлению ).

0 голосов
/ 17 июня 2011

Просто добавьте mkdir -p dir1 dir2 к соответствующему правилу вашего make-файла перед компиляцией.

Пример: (Вам придется изменить это для вашей конкретной настройки)

DIR = obj exec
VPATH= balll mall fall
OBJECTS= objj/goka.o objj/foka.o objj/hoka.o

exec/gola:$(OBJECTS)
    gcc $^  -o  $@  
$(OBJECTS): objj/%.o : %.c
    mkdir -p $(DIR)
    gcc -c  $<  -o  $@  
...