make-файл: недостающий разделитель

#kernel build system and can use its lanauge
ifneq($(KERNELRELEASE),)
 obj-m:=helloworld.o
else
 KDIR:= /lib/modules/2.6.33.3-85.fc13.i686/build
all:
 make -C $(KDIR) M=$(PWD) modules
clean:
 rm -f *.ko *.o *.mod.o *.mod.c *.symvers
endif

Ошибка:

makefile:2: *** недостающий разделитель. остановиться

но для ifneq($(KERNELRELEASE),), если я добавляю вкладку прежде, я получаю другую ошибку:

makefile:2: команды *** начинаются перед первой целью. остановиться

9
задан Michael Mrozek 23 July 2010 в 03:13
поделиться

3 ответа

Между ifneq и ( должен быть пробел.

Префикс TAB означает, что это команда оболочки, поэтому убедитесь, что команды оболочки (make и rm) начинаются с TAB, а все остальные строки, такие как ifneq, не начинаются с TAB.

22
ответ дан 4 December 2019 в 09:11
поделиться

Check before obj-m: and KDIR: etc. Ваши табуляции вставляются как пробелы?

0
ответ дан 4 December 2019 в 09:11
поделиться

Вам не хватает второй части условного ifneq ($ (KERNELRELEASE),) должно иметь что-то после запятой, например «2.6.17» (например).

0
ответ дан 4 December 2019 в 09:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: