我无法生成包含我所有使用自动工具的谷歌测试的测试可执行文件。
我们的开发项目非常大,包含几个模块。所以,我想要的是让每个模块创建一个测试 lib/object 文件,然后将它们一起创建一个测试 exec 文件(实际上是通过make test
)
这个 Makefile.am 编译,但不运行测试:(测试不是自动注册的,它正在运行 0 测试)
noinst_LTLIBRARIES = libtest2.la
libtest2_la_SOURCES = test2.cpp
libtest2_la_LIBADD = lib/libgtest.la
libtest2_la_CXXFLAGS = -I./include
TESTS = testall
check_PROGRAMS = testall
testall_SOURCES = test2.cpp
testall_CXXFLAGS = -I./include
testall_LDADD = libtest2.la lib/libgtest_main.la
当然,这个可行(但这不是我想要的):
testall_SOURCES = test2.cpp
testall_CXXFLAGS = -I./include
testall_LDADD = lib/libgtest_main.la
两者之间的真正区别是什么?我怎样才能使这些测试在我的项目中工作?