Убунту сделать файл вопрос

У меня есть небольшой вопрос по файлу make, вот код:

KERNEL_VERSION := $(shell uname -r)
KERNEL_MODLIB  := /lib/modules/$(KERNEL_VERSION)
KERNEL_SOURCES := $(shell test -d $(KERNEL_MODLIB)/source && echo $(KERNEL_MODLIB)/source || echo $(KERNEL_MODLIB)/build)
CPPFLAGS       += -DDRIVER_ERROR -DDRIVER_DEBUG
obj-m   := main.o
KDIR    := $(KERNEL_SOURCES)
PWD := $(shell pwd)
default:
     $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules 
clean:
     $(RM) main.ko.unsigned  main.mod.c  main.mod.o  main.o modules.order  module.symvers .main* .tmp_versions/*

Я хочу знать, что делает этот код:

$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) modules 

спасибо за продвижение ~ ~

2
задан 13 October 2015 в 16:51

1 ответ

Изменения команды справочника $(KDIR) и пробеги делают оттуда, чтобы построить цель modules.

$(MAKE) макрос, который управляет сделать исполняемым файлом. Причина его (вместо того, чтобы просто использовать make) состоит в том, что у того исполняемого файла могли быть различные имена.

-C <directory> изменения определенного справочника перед управлением делают.

SUBDIRS=<variable> определяет переменную SUBDIRS, когда управление делает.

modules средства это попытается построить ту цель.

0
ответ дан 14 October 2015 в 02:51
  • 1
    Извините я didn' t ответ - я попробовал это и никакую удачу, но я переустановил на другом компьютере, и это работало. – Nicolas Hanna 11 October 2018 в 21:02

Другие вопросы по тегам:

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