强制 运行 MakeFile 规则到 运行 shell 命令

Force run MakeFile rule to run shell command

我的 make 文件中有以下规则,运行只是一个 shell 命令

install:
    $(shell insmod kdisk.ko)

但是当我 > make install 时,它总是说 make: 'install' is up to date.

如何强制它执行 运行 shell 命令?

您可能希望将目标声明为

 .PHONY: install
install: kdisk.ko
    insmod kdisk.ko

这告诉 make 程序:

  1. install 目标需要 kdisk.ko 才能启动
  2. install 目标是一个 phony 目标,不会尝试生成 install 文件,只是为了做一些有用的事情。
  3. 绑定安装的配方为insmod kdisk.ko

根据您的声明,命令 insmod kdisk.ko 将在 make 读取文件时处理,其输出将用作 install 的配方目标。完全不是你想要的。