У меня есть 3 файла, и я хочу сделать make-файл для них.Makefile отсутствует разделитель, но есть жесткая вкладка
Файлы:
polyHeader.c
(Это файл, содержащий все функции определения)polyHeader.h
(Это заголовочный файл, содержащий все функции объявления/прототипы)polyTest.c
(Файл принадлежит главной)
Я создал следующий Makefile:
polyTest: polyTest.c polyHeader.o
gcc -Wall -o polyTest polyTest.c
polyHeader.o: polyHeader.c
gcc -Wall -o polyHeader polyHeader.c
ПРИМЕЧАНИЕ: Я не был уверен, если я должен также иметь дело с файлом заголовка (polyHeader.h) в Makefile или делает это даже необходимо скомпилировать (т.е. будет компоновщик просто найти и ссылку на него в любом случае - я включил его в обеих других файлах с помощью #include "polyHeader.h"
)
Во всяком случае, когда я запускаю команду грима для Makefile, показанного выше, я получаю следующее сообщение об ошибке:
Makefile:2: *** missing seperator. Stop.
Может ли кто-нибудь посоветовать мне, как разобраться в этом?
Вы будете иметь проблемы с компиляцией после работы make-файла; вам нужно включить 'polyHeader.o' в командной строке, которая создает' polyTest'. Тем не менее это не связано с вашей текущей проблемой. –
Ok Jonathon, спасибо за это, из интереса: зачем мне включать .o (object file) в команду gcc? – SlamDunkMonk
У вас есть пустая строка между строкой 'polyTest:' и 'gcc'? Работает ли он лучше, если вы его удалите? Есть ли пробел в начале этой строки? –