Windows 下的 GnuMake SHELL

Windows 下的 GnuMake SHELL

我正在尝试使用随 git-for-windows“distro”一起安装的 cygwin,使一个简单的 makefile(GNU Make 3.81)在 Windows 下运行。

一切似乎都正常,但 SHELL 却总是显示正在使用“sh”。手动的有一些关于 Windows 上的 SHELL 的注释,但它提到了 COMSPEC,它指向实际的 Windows shell(cmd.exe),它在这里不起作用。此外,$(COMSPEC)Makefile 的结果是一个空白字符串,而$(SHELL)始终是 sh.exe 的路径,这是我试图用 bash.exe 替换的正在使用的路径

这是要重现的最小 Makefile:

$ cat Makefile
SHELL="C:/Program Files/Git/usr/bin/bash.exe"

info:
        $(info SHELL is "$(SHELL)")
$ make info
SHELL is "C:/Program Files/Git/usr/bin/sh.exe"
make: `info' is up to date.

有人已经知道如何在这个设置中使用 bash 了吗?

相关内容