我已经阅读了所有与我似乎有同样错误的答案。在实现了建议的地方或那里添加选项卡并检查空格的解决方案后,我似乎无法使makefile正常工作。
这来自MDM显示管理器的makefile(https://github.com/linuxmint/mdm),通过运行我的机器进行配置:
./authogen.sh --with-prefetch
./configure
现在我在make
以下是我遇到问题的makefile示例:
此代码示例是在vim中加载后运行:set list
以查看选项卡的示例,如前面另一个makefile中缺少的分隔符问题所述。
据说第649行发生错误。
635 $
636 cscopelist-am: $(am__tagged_files)$
637 ^Ilist='$(am__tagged_files)'; \$
638 ^Icase "$(srcdir)" in \$
639 ^I [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \$
640 ^I *) sdir=$(subdir)/$(srcdir) ;; \$
641 ^Iesac; \$
642 ^Ifor i in $$list; do \$
643 ^I if test -f "$$i"; then \$
644 ^I echo "$(subdir)/$$i"; \$
645 ^I else \$
646 ^I echo "$$sdir/$$i"; \$
647 ^I fi; \$
648 ^Idone >> $(top_builddir)/cscope.files$
649 $
650 distclean-tags: $
651 ^I-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags$
652 ^I-rm -f cscope.out cscope.in.out cscope.po.out cscope.files$
653 $
654 distdir: $(DISTFILES)$
答案 0 :(得分:1)
Makefile:649:***缺少分隔符。停止
make[2]: Entering directory '/home/knudfl/tmp/mdm/docs'
Makefile:651: *** missing separator. Stop.
mdm中有大量的Makefile。从
编辑mdm / docs / Makefile.PRECIOUS: Makefile
@YELP_HELP_RULES@
....分隔符为[TAB],而不是8倍空格:编辑为... [TAB]@YELP_HELP_RULES@
.PRECIOUS: Makefile
@YELP_HELP_RULES@
编辑:请参阅@Arkadiusz Drabczyk的答案
答案 1 :(得分:1)
您需要在运行yelp-tools
之前安装./autogen.sh
。做完之后
您会注意到@YELP_HELP_RULES@
中的docs/Makefile
只是一个占位符
应该扩大。