命令 make 无法识别 Makefile 的“[”
command make can not recognize " [ " of Makefile
之前学过Makefile,但是今天输入命令"make"时Makefile出现问题
这是一段代码:
[ -d _build ] || mkdir _build
错误:
'[' is not recognized as an internal or external command, operable program or batch file.
还有我的 Make 版本:
GNU Make 3.82.90
Built for i686-pc-mingw32
有人能告诉我如何解决吗?
您的 makefile 是为 Linux/Unix 编写的,您 运行 它在 Windows 下。
在 makefile 中,组成目标配方的命令是
用 OS shell 的语言编写。在 Windows 下 shell 是 cmd
。
在 Linux 下默认为 bash
。在其他 Unix 变体下它是 sh
或
其他一些 shell.
[ -d _build ] || mkdir _build
是 bash
和其他一些 Linux/Unix shell 的有效命令。不是为了
cmd
。几乎所有其他配方命令也是如此
生成文件。你刚刚遇到了第一个这样的问题。
您的 makefile 在本机 Windows 下没有用。在 Windows 你有机会
运行 它在 Linux 虚拟机中,或在 Windows 10 子系统下 Linux,
或者在 Windows 的类 Unix 环境下,例如 Cygwin 或 MSYS2。你可以
我们需要安装 makefile 配方所需的工具 Linux/Unix-like
系统.
如果makefile比较简单可以考虑翻译无法识别的shell
如果可以,将命令转换为 cmd
命令。
之前学过Makefile,但是今天输入命令"make"时Makefile出现问题
这是一段代码:
[ -d _build ] || mkdir _build
错误:
'[' is not recognized as an internal or external command, operable program or batch file.
还有我的 Make 版本:
GNU Make 3.82.90
Built for i686-pc-mingw32
有人能告诉我如何解决吗?
您的 makefile 是为 Linux/Unix 编写的,您 运行 它在 Windows 下。
在 makefile 中,组成目标配方的命令是
用 OS shell 的语言编写。在 Windows 下 shell 是 cmd
。
在 Linux 下默认为 bash
。在其他 Unix 变体下它是 sh
或
其他一些 shell.
[ -d _build ] || mkdir _build
是 bash
和其他一些 Linux/Unix shell 的有效命令。不是为了
cmd
。几乎所有其他配方命令也是如此
生成文件。你刚刚遇到了第一个这样的问题。
您的 makefile 在本机 Windows 下没有用。在 Windows 你有机会 运行 它在 Linux 虚拟机中,或在 Windows 10 子系统下 Linux, 或者在 Windows 的类 Unix 环境下,例如 Cygwin 或 MSYS2。你可以 我们需要安装 makefile 配方所需的工具 Linux/Unix-like 系统.
如果makefile比较简单可以考虑翻译无法识别的shell
如果可以,将命令转换为 cmd
命令。