首页 > 解决方案 > 更改项目目录后Makefile不起作用

问题描述

我和我的朋友正在做操作系统。在我们更改文件位置之前,一切都很好。它说:

make:没有为 kernel.bin 创建“obj/drivers/loader.o”的规则。

我们不知道为什么。

您可以在https://github.com/Langriklol/pluto查看源代码。

标签: makefilecompilation

解决方案


问题是规则中的目录是错误的。

您有一个名为的文件loader.s,并希望创建一个obj/drivers/loader.o以此文件命名的文件。

您的任何规则都makefile与此不匹配:

该规则obj/%.o: drivers/%.s适用于创建obj/loader.ofromdrivers/loader.s但不适用于创建obj/drivers/loader.ofrom loader.s


推荐阅读