Ошибка: отсутствует разделитель
Я пытаюсь установить rexec в Redhat Enterprise Release 4. Каждый раз, когда я пытаюсь использовать команду make, я получаю следующую ошибку.
Makefile: 15: *** отсутствует разделитель. Стоп.
Я посмотрел в другом месте в сети, и строка 15 Makefile имеет следующее:
.include (я не уверен, почему, но этот сайт скрывает то, что следует за.include, это bsd.kmod.mk, окруженный <>)
Я использовал vi, чтобы убедиться, что пробел в середине - это табуляция, а не 8 пробелов, это не решает проблему. Я поместил TAB перед.include, когда я где-то читал, в начале должна быть вкладка, затем я получаю другую ошибку:
make: *** Нет правила для создания цели 'rexec.ko', необходимой для 'load'. Стоп.
Я не уверен, что еще я должен сделать, чтобы установить rexec, какие-нибудь подсказки?
Весь Makefile:
SRCS = rexec.c vnode_if.h KMOD = rexec KO = $ {KMOD}.ko KLDMOD = t
KLDLOAD = / sbin / kldload KLDUNLOAD = / sbin / kldunload
нагрузка: ${KO} ${KLDLOAD} -v ./$ndomKO}
выгрузить: $ {KO} $ {KLDUNLOAD} -v -n $ {KO}
.include (я не уверен, почему, но этот сайт скрывает то, что следует за.include, это bsd.kmod.mk, окруженный <>)
2 ответа
.include
Директива BSD Make синтаксис. По умолчанию make
В Linux команда GNU Make поддерживает несколько иной синтаксис.
Кроме того, вы не найдете bsd.kmod.mk
в вашей системе RedHat, и вам не повезет с использованием BSD kldload
команда.
Вы уверены, что загрузили правильную вещь?
Я считаю, что.include должно использовать пробелы. Проверьте последнюю часть Makefile. Это должно закончиться так:
unload: ${KO}
<tab>${KLDUNLOAD} -v -n ${KO}
.include <bsd.kmod.mk>
Где