我浏览了其他与我相似的帖子,这些帖子已通过固定选项卡或空格来解决,但对我而言不起作用(或者我不在正确的位置)。我正在尝试下载Swarm软件,该软件的最新稳定版本是2000年代初。也许这是一个丢失的原因(或者我可能只需要吸收它并在虚拟机中运行它),但是却收到错误消息“ Makefile.am:1:***缺少分隔符。请停止。”我的makefile代码的第一部分是:
if USEBUILTINAVCALL
SUBDIRS = $(LIBOBJCDIR) avcall etc src tools java COM m4 tests
else
SUBDIRS = $(LIBOBJCDIR) etc src tools java COM m4 tests
endif
EXTRA_DIST = VERSION macosx/buildlibs.sh macosx/ChangeLog macosx/configure.sh macosx/INSTALL.MacOSX macosx/README.MacOSX macosx/swarm.xcode/project.pbxproj
SWARM_INSTALL = @SWARM_INSTALL@
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(includedir)
$(INSTALL_DATA) swarmconfig.h $(DESTDIR)$(includedir)
$(INSTALL_DATA) externvar.h $(DESTDIR)$(includedir)
$(mkinstalldirs) $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/swarm
$(INSTALL_PROGRAM) $(top_builddir)/libtool $(DESTDIR)$(bindir)/libtool-swarm
if test $(SWARM_INSTALL) = install-sh; then $(INSTALL_PROGRAM) $(srcdir)/install-sh $(DESTDIR)$(bindir); fi
install-recursive: install-data-local
在我看来,这就像Makefile.in
文件,而不是Makefile
。也就是说,它打算由automake。
GNU make不支持if
语句(它具有ifdef
和ifeq
和ifneq
,但不包含if
)。 Automake确实支持这一点。并且@SWARM_INSTALL@
之类的令牌应被替换。