我有一个针对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),)
这条线在Imakefile
中有效,但在Makefile
中没有。它看起来像C预处理器的宏。当预处理器没有找到宏的定义时,它会保持原样。
接下来的问题是:为什么宏MComplexProgramTarget
未定义,哪个文件通常定义它?
要回答这个问题,您需要知道imake读取其定义文件的位置(“strace -f xmkmf”可以帮助您),以及该单词出现在哪个文件中?
最可能的事情是你导致gmake
的一些不兼容问题,这应该是你正在使用的make版本。安装BSD make并使用它来构建系统。可能这会解决你的问题(或者没有,但我遇到过这种问题)根据平台的不同,这个包被称为bmake
或pmake
。