LZMA 生成文件中的“*** 缺少分隔符”错误

"*** missing seperator" error in LZMA's makefile

我正在尝试在 Ubuntu 18.04 上构建 LZMA 18.05 库,但这是我在 C/Util/LzmaLib 中 运行 make 时发生的情况:

制作 makefile:26: *** 缺少分隔符。停止。

我真的不明白是什么原因造成的,因为我不是编写代码的人,而是一个众所周知的库。这是第 26 行:

!include "../../../CPP/Build.mak"

下面是相关联编文件的代码:

MY_STATIC_LINK=1
SLIB = sLZMA.lib
PROG = LZMA.dll
SLIBPATH = $O$(SLIB)

DEF_FILE = LzmaLib.def
CFLAGS = $(CFLAGS) \

LIB_OBJS = \
  $O\LzmaLibExports.obj \

C_OBJS = \
  $O\Alloc.obj \
  $O\LzFind.obj \
  $O\LzFindMt.obj \
  $O\LzmaDec.obj \
  $O\LzmaEnc.obj \
  $O\LzmaLib.obj \
  $O\Threads.obj \

OBJS = \
  $(LIB_OBJS) \
  $(C_OBJS) \
  $O\resource.res

!include "../../../CPP/Build.mak"

$(SLIBPATH): $O $(OBJS)
    lib -out:$(SLIBPATH) $(OBJS) $(LIBS)

$(LIB_OBJS): $(*B).c
    $(COMPL_O2)
$(C_OBJS): ../../$(*B).c
    $(COMPL_O2)

知道如何解决这个问题吗?如果您需要更多,here's the download link 到图书馆。

那不是 GNU 生成文件。我认为它适用于 Windows 上的 nmake。其他内容(objdeflibdll 和资源文件)也指向 Windows 库构建,因此只需修补包含语法是不够的。这看起来不像是在 Unix 上构建的东西。