make文件中的错误:***缺少分隔符。停止

编程入门 行业动态 更新时间:2024-10-26 06:36:18
本文介绍了make文件中的错误:***缺少分隔符。停止的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在CentOS 6.02 64位的make文件中遇到错误。我需要知道应该做什么来使makefile可行。任何建议将是非常有用的。我的make文件在下面粘贴: -

I am facing errors in make file in CentOS 6.02 64 bit. I need to know what should be done to make the makefile workable. Any suggestion will be greatly helpful. My make file is pasted below: -

# .SUFFIXES: .cc $(.SUFFIXES) ALL = libpal.a #all = $(ALL) all: $(ALL) .cpp.o: $(C++) -o $@ -c $(PROF) $(CFLAGS) $*.cpp .cc.o: $(C++) -o $@ -c $(PROF) $(CFLAGS) $*.cc .c.o: $(CC) -o $@ -c $(PROF) $(CFLAGS) $*.c top_srcdir = .. OPENSSL_LIB_DIR = ../../ThirdPartyLibs/openssl-0.9.8e/include BOOST_DIR = ../../ThirdPartyLibs/boost/stage/lib BOOST_INCLUDE_DIR = ../../ThirdPartyLibs/boost CC = gcc C++ = g++ CCOPT = -Os -Wall -Wno-deprecated CCOPT_DEBUG = -Wall -g -Wno-deprecated PROF = STATIC = -static INCLUDE = \ -I./usr/include/sys -I./Headers \ -I$(top_srcdir)/PAL/Headers \ -I$(top_srcdir)/BaseMulti/Headers \ -I$(top_srcdir)/NetworkMulti/Headers \ -I$(top_srcdir)/RTP/Headers \ -I$(BOOST_INCLUDE_DIR) \ -I$(OPENSSL_LIB_DIR) \ LIBDIRS = \ -L$(BOOST_DIR) \ #XXX NLAYER define / MB_DEBUG DEFINE = -D_LINUX -DDEBUGLOG -D_INDENT_DB_PRINT -fsigned-char -fno-inline -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -D_POSIX_PER_PROCESS_TIMER_SOURCE -D_PTHREADS -DUNICODE #-DDISABLE_LOG SHLIB_SUFFIX = .so SHLIB_LD = gcc -shared #The previous line had "gcc" instead of "frv-uclinux-gcc" SHLIB_LD_LIBS = SHLIB_CFLAGS = -fPIC BFLAGS = $(DEFINE) $(INCLUDE) CFLAGS = $(CCOPT) $(BFLAGS) OBJ_C = OBJ_CC = \ ./Sources/PALsystime.o \ ./Sources/PALdebug.o \ ./Sources/PALdebuglog.o \ ./Sources/PALthread.o \ ./Sources/PALcritsec.o \ ./Sources/PALprofiler.o \ ./Sources/PALserializable.o \ ./Sources/PALinet.o \ ./Sources/PALnetwork.o \ ./Sources/PALsocket.o \ ./Sources/PALlocalhostUdpEvent.o \ ./Sources/PALpollarray.o \ ./Sources/PALrandom.o \ OBJS = $(OBJ_C) $(OBJ_CC) SRCS = $(OBJ_C:.o=.c) $(OBJ_CC:.o=.cc) debug: DEFINE += -DDEBUG debug: BFLAGS = $(DEFINE) $(INCLUDE) debug: CFLAGS = $(CCOPT_DEBUG) $(BFLAGS) debug: $(OBJS) ar crsu libpal_debug.a $(OBJS) libpal.a: $(OBJS) ar crsu libpal.a $(OBJS) cleandeps: $(RM) ./Sources/*.o .depend* core clean: cleandeps $(RM) ./libpal.a ./libpal_debug.a $(RM) $(ALL)

结果错误是:

Makefile:34: *** missing separator. Stop.

推荐答案

href =www.gnu/software/make/manual/make.html#Error-Messages =nofollow>附录B由Make生成的错误。

You can find an explanation of this error in Appendix B Errors Generated by Make.

食谱中的每一行必须以制表符开头。以您的文件顶部附近的 $(C ++)和 $(CC)开头的食谱似乎没有开始

Every line in a recipe must begin with a tab character. The recipes starting with $(C++) and $(CC) near the top of your file do not seem to start with a tab character.

此外,

INCLUDE = \ -I./usr/include/sys -I./Headers \

似乎在 sys 后缺少一个反斜杠,同一节(以及更多)具有多余的空行。

seems to be missing a backslash after sys and that same section (and many more) have superfluous empty lines.

更多推荐

make文件中的错误:***缺少分隔符。停止

本文发布于:2023-11-01 23:30:19,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1550720.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:错误   文件   分隔符

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!