Makefile:1059:***缺少分隔符。停止

问题描述 投票:0回答:2

我有一个针对DEC Unix v4的项目。我想为linux编译它。我的项目有Imakefile,我运行xmkmf来生成Makefile,之后运行make to compile但是我得到了Makefile:1059: *** missing separator. Stop.

当我看到this post我安装SparkyLinux并为它安装CDE和libmotif-dev为Motif和CDE再次我将生成Makefile并运行make,但我的问题仍然

1059行:MComplexProgramTarget(_gdsv_.o,$(LOCAL_LIBRARIES),)

linux compiler-errors motif imake
2个回答
1
投票

这条线在Imakefile中有效,但在Makefile中没有。它看起来像C预处理器的宏。当预处理器没有找到宏的定义时,它会保持原样。

接下来的问题是:为什么宏MComplexProgramTarget未定义,哪个文件通常定义它?

要回答这个问题,您需要知道imake读取其定义文件的位置(“strace -f xmkmf”可以帮助您),以及该单词出现在哪个文件中?


1
投票

最可能的事情是你导致gmake的一些不兼容问题,这应该是你正在使用的make版本。安装BSD make并使用它来构建系统。可能这会解决你的问题(或者没有,但我遇到过这种问题)根据平台的不同,这个包被称为bmakepmake

© www.soinside.com 2019 - 2024. All rights reserved.