【问题标题】:How to address the error has both : and :: entries while using gnu make如何解决错误在使用 gnu make 时同时具有 : 和 :: 条目
【发布时间】:2015-06-19 08:25:04
【问题描述】:

我正在尝试将一个新模块移植到我的项目中。该模块有自己的 make 文件。我没有 make 构建系统的背景或经验,所以我决定使用以下命令:

make -f Makefile -f ../newmodule/tbt/makefile

但我收到以下错误:

../newmodule/tbt/makefile:14: make/macros.mk: 没有这样的文件或 目录 ../newmodule/tbt/makefile:66: *** 目标文件 `all' 同时具有 : 和 :: 条目。停下来。

如果我错了,请纠正我;据我了解,我的第一个错误是因为我从我的主项目发出了 make,我需要以某种方式将其配置为查看 ../newmodule/tbt/make 的目录以找到 macros.mk。有人能提出解决这个问题的有效方法吗?包含../newmodule/tbt/make 文件夹内容的最佳方法是什么?

我的第二个错误似乎正是 make 抱怨的原因,即目标 "all" 的两个 make 文件中有 : 和 ::。我不能非常密切地关注第二个 make 文件,但是有这个目标的行并不多。我正在考虑将其更改为My_all,并将这个新变量配置为新模块的默认目标。我什至不确定我的术语是否正确。 “all”被称为make的默认目标吗?我已经查看了大部分 make file 文档,但现在是早上 5 点,有些事情我不记得了。

【问题讨论】:

    标签: makefile gnu-make gnu


    【解决方案1】:

    我在 OpenWrt 下编译某些包时遇到了这个错误。问题出在 Makefile 中的 VERSION 声明中。

    因此,请检查您是否在某个变量之后声明了任何带有不必要空格或 cmets 的内容。

    删除变量后的注释或空格应该可以工作。

    【讨论】:

      【解决方案2】:

      尝试运行两个单独的make -f myMakefile 命令,一个来自每个模块目录,以便相对路径正常工作,因为您已经观察到执行make 时的当前目录可能是问题的一部分。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-01
        • 1970-01-01
        • 2020-11-17
        • 2016-01-03
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多