2017-09-19 28 views
0

由于依赖关系,每次生成文件都执行失败。我不想过度分享,所以我会尽力只分享必要的信息。我正在使用GNUWin32 make,以便我的Windows机器可以执行它(我必须处理的一个约束),并且我能够在src \\ Framework \ ... \\%中编译/制作相当数量的文件。 realm from .. \\ src \\ Framework \ ... \\%。c。在生成文件中找不到隐式规则

似乎只要至少有2个文件夹深,Makefile就可以工作。例如:src \\ test.o不会编译,但src \\ tester \\ test.o会编译。

我的错误如下:

化妆:***没有规则,使目标 'SRC \\ control.o',通过 'proj.elf' 需要。停止。

但我也有其从目标的相关性的所有执行下面的规则:

SRC \\%○:。.. \\ SRC \\%C

只要.. \\ src \\%。c存在,它应该生成src \\ control.o。


当我使用make -d all我注意到它与

结束发现 'SRC \\ control.o' 没有隐含规则。

完成目标文件'src \\ control.o'的先决条件。

必须重拍目标“SRC \\ control.o”

如果任何人有一个解决方案,使这项工作我将很高兴听到它!

回答

0

我发现了这个问题。显然,即使GNUWin32 make也使用Unix样式文件名作为目标和依赖项,但为了使用mkdir命令,您必须使用Windows样式文件名。

测试/窗/%○:。../test/windows/%.c

的mkdir测试\ WINDOWS \ make_this_dir \

我希望这有助于有类似问题的人。