2011-03-23 147 views
-1
make -C $(KERNEL_DIR) SUBDIRS=pwd` modules 

有人可以詳細說明這一點嗎?這個命令做什麼?

+0

你確定那個反襯(')? – Beta 2011-03-23 04:03:43

+2

我很確定他的意思是'pwd \'。 – 2011-03-23 04:04:26

+0

可能重複的[爲什麼可以在這裏工作?](http://stackoverflow.com/questions/5388224/why-can-make-work-here) – shodanex 2011-03-23 09:53:21

回答

1

-C表示「在開始make之前切換到此目錄」。 SUBDIRS是Linux內核make系統使用的變量。 SUBDIRS =`pwd`表示內核makefiles應該在當前目錄中查找,因爲pwd表示「打印工作目錄」。並且modules意味着製作模塊。

它可能使用內核make系統來構建一個out-of-tree模塊。樹外意味着內核不附帶的內核模塊。

事實上,我似乎記得看到這個命令用作Nvidia二進制模塊安裝程序的一部分。

+0

所以要構建一個內核模塊,只需要'SUBDIRS',而不是特定的文件?它如何知道要編譯哪些模塊? – compiler 2011-03-23 05:33:25

+0

,因爲這一行是Makefile的一部分,並且目標位於Makefile – shodanex 2011-03-23 09:53:03