shell 对 makefile 中的命令显示“未找到”

shell 对 makefile 中的命令显示“未找到”

当定义一个命令作为常数在 Makefile 中

MY_COMMANDLINE="prog arg1 arg2"

稍后使用这个常量来调用命令,您可以获得:

/bin/sh: prog arg1 arg2: not found

尽管 prog 确实存在。
明确给出 的整个路径prog没有帮助。


还有其他关于 shell 的问题说“未找到“(例如或者)。通过链接这个问题,其他人可能会更容易地发现这个可能的原因。

答案1

与 shell 脚本中的引号不同,引号成为字符串的一部分并传输到 shell,然后显然 shell 会搜索整个路径(包括)。所有空间。

定义不带引号的命令行:

MY_COMMANDLINE=prog arg1 arg2

作品。

相关内容