【问题标题】:Missing separator in MakefileMakefile 中缺少分隔符
【发布时间】:2013-07-27 16:31:29
【问题描述】:

事情就是这样。

我正在尝试构建 pngwriter。在makefile中有一行说:

include make.include

文件make.include具有通过符号链接指定使用平台的功能,它只有一行:

make.include.linux

(在同一目录中有一个名为 make.include.linux 的文件,其中包含一些必要的设置。顺便说一下,我正在使用 MinGW 在 Windows 上执行此操作)

在 msys shell 中,当我执行 ma​​ke 时,它会说:

make.include:1: *** missing separator. Stop.

我查看了其他缺少的分隔符帖子,它们是关于空格/制表符的,我认为这里不是这种情况。我搜索了有关 makefile、符号链接、分隔符的信息,并且可以解决它。

请帮忙!

编辑!好的,所以 make.include.linux 不是命令,它是一个文件,其内容需要包含在原始 makefile 中。正如我所读到的,make.include 应该是 make.include.linux 的符号链接。

【问题讨论】:

  • make.include.linux 是什么?
  • 这是一个文件,包含不同的数据。我猜这是一个命令,正如您在下面命名的那样。我会更多地研究目标、配方。
  • 好的,那么您是否尝试将其设为符号链接?
  • 我不知道怎么做。在文件中写什么?

标签: makefile


【解决方案1】:

您所拥有的 make 语法无效。命令只能作为目标配方的一部分运行。在您的情况下,您想要的是:

all:
    make.include.linux

假设make.include.linux 是一个命令,而不是别的东西。确保缩进是制表符。

【讨论】:

  • 如果你想看看我的编辑。 make.include 不是命令,它是一个文件
  • 好的,听起来你想要的只是将该文件更改为include make.include.linux,或者只是删除make.include并将其重新创建为符号链接:ln -s make.include.linux make.include。跨度>
  • 如果我把“include make.include.linux”放在make.include中,它会说:“../make.include:1: make.include.linux: No such file or directory make [ 1]:***没有规则来制作目标'make.include.linux'。停止。”但是符号链接似乎可以完成这项工作。谢谢。
猜你喜欢
  • 2012-03-23
  • 2011-03-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-05-13
  • 2012-12-16
相关资源
最近更新 更多