Make-Error“缺少分隔符”(大概是因为程序的变量定义不正确)

问题描述 投票:0回答:1

我目前正在尝试从源代码构建一个程序。我已经走了很长一段路,但我失败了,并显示消息“Makefile:3360:***缺少分隔符。停止。”该行位于 automake 生成的 Makefile 中:

$(example): $(example1/src/*) $(example1/include/*)
    $(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
  server

我怀疑错误在于步骤 ./autogen.sh 中的警告指示的位置(“警告:定义了变量‘server_SOURCES’,但没有程序或库将‘server’作为规范名称(可能是拼写错误)”)。

我想在不同的可执行文件之间共享服务器,并使用 CPP 标志和源:

# server: shared between executable A and executable B
server_CPPFLAGS = $(example) $(example)
server_SOURCES = \
  init.cpp \
  main.cpp \
  And-so-on.cpp
  $(Program-name_H)

我已经尝试过变量“CPPFLAGS =”和“SOURCES”而不是“server_CPPFLAGS”和“server_SOURCES”,但没有成功。

我能做什么?

variables automake
1个回答
0
投票

“缺少分隔符”是

make
经典。引用的制作配方应该看起来像

$(example): $(example1/src/*) $(example1/include/*)
<TAB>$(AM_V_at)$(MAKE) $(AM_MAKEFLAGS) -C $(@D) $(@F)
<TAB>server

但是您的变体在

server
行中有空格。

至于“共享服务器”的事情,我不知道你在做什么或你想做什么。

© www.soinside.com 2019 - 2024. All rights reserved.