Makefile 自动工具--make[1]:***没有规则将目标设置为'all';。停止

Makefile 自动工具--make[1]:***没有规则将目标设置为'all';。停止,makefile,autotools,Makefile,Autotools,我使用autotools创建了一个简单的测试应用程序+库。问题是生成的Makefile不理解“all”目标 Makefile.am: ACLOCAL_AMFLAGS = -I m4 SUBDIRS = src VERSION=0:0:0 EXTRA_DIST = autogen.sh bin_PROGRAMS = testApp libtest_la_SOURCES = src/testLibrary.c libtest_la_LDFLAGS = -version-info ${VERSIO

我使用autotools创建了一个简单的测试应用程序+库。问题是生成的Makefile不理解“all”目标

Makefile.am:

ACLOCAL_AMFLAGS = -I m4
SUBDIRS = src
VERSION=0:0:0
EXTRA_DIST = autogen.sh

bin_PROGRAMS = testApp

libtest_la_SOURCES = src/testLibrary.c
libtest_la_LDFLAGS = -version-info ${VERSION}

testApp_SOURCES = src/testApp.c
testApp_LDADD = libtest.la
lib_LTLIBRARIES = libtest.la
configure.ac:

AC_INIT(foobar, 1.0, me@mail.com)
AC_CONFIG_AUX_DIR(config)
AC_CONFIG_SRCDIR(src)
AC_PROG_CC
AM_PROG_CC_C_O
LT_INIT
AC_CONFIG_MACRO_DIR([m4])
AM_INIT_AUTOMAKE([subdir-objects])
AC_OUTPUT(Makefile)
命令“make”的输出:


但是make理解“testApp”目标并成功构建它。根据我对自动工具的有限了解,bin_PROGRAMS变量应该为“all”目标提供数据?

您似乎在结合递归和非递归生成规则

如果删除此行:

SUBDIRS = src
这个错误可能会消失。它正在
src/Makefile
中查找
all
规则

SUBDIRS = src