我有以下简单的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下运行。
答案 0 :(得分:1)
当使用类似可执行文件名称的简单命令时,GNU make将直接启动可执行文件。如果找到可执行文件的目录不在PATH / path中,则make将失败。
如果将目录放在路径中,则makefile应该正常工作。
另外,正如@AlexFarber在评论中所建议的那样,通过添加“./
”GNU make会假设一个更复杂的命令(因为并非所有shell都是相同的),并将命令交给配置的shell 。这将起作用,因为shell是在找到命令的目录中创建的。