为什么告诉我“找不到命令”?

时间:2011-08-11 13:22:03

标签: windows makefile mingw

我有以下简单的makefile:

all:
    fat_imgen.exe

其中fat_imgen.exe是与makefile位于同一目录中的可执行文件。当我尝试运行时,会发生这种情况:

>make
fat_imgen.exe
make: fat_imgen.exe: Command not found
make: *** [all] Error 127

如果我从同一个命令提示符运行fat_imgen,那么它会按预期启动 - 为什么无法查找fat_imgen.exe

这一切都在Mingw / Windows下运行。

1 个答案:

答案 0 :(得分:1)

当使用类似可执行文件名称的简单命令时,GNU make将直接启动可执行文件。如果找到可执行文件的目录不在PATH / path中,则make将失败。

如果将目录放在路径中,则makefile应该正常工作。

另外,正如@AlexFarber在评论中所建议的那样,通过添加“./”GNU make会假设一个更复杂的命令(因为并非所有shell都是相同的),并将命令交给配置的shell 。这将起作用,因为shell是在找到命令的目录中创建的。

相关问题