2013-07-18 10 views
0

У меня есть этот файл:Makefile

main.c 
A.h 
A.c 
B.h 
B.c 
X.h 

и в main.c я включаю и в хиджрах I включают B и B.h включает X.h Как я мог бы написать Makefile для этого? скажите, пожалуйста, о диаграмме зависимости этого примера

+0

В 'A.c' вы включаете' A.h'? В 'B.c' вы включаете' B.h'? – Beta

ответ

1

Попробуйте это:

main: main.o A.o B.o 
    gcc -o main main.o A.o B.o 

%.o: %.c 
    gcc -c $< 

При составлении .c файлов вам не придется беспокоиться о зависимостях же, только при компоновке исполняемого файла.

+0

что% означает здесь? (mean any?) – Aryan

+0

Да,% является заполнителем, который соответствует чему угодно. $ <Вещь в команде gcc означает исходный файл (то, что стоит справа от двоеточия, в этом случае .c файл). Существует также переменная $ @, которая обозначает целевой файл (слева от двоеточия), но здесь он не нужен, потому что gcc автоматически сохраняет результат компиляции name.c как name.o. –

+0

@Aryan .. Вам нужно изучить основы Makefile 'http: // sagarsakre.blogspot.com/2012/09/understand-makefile-for-beginners.html' –