如何处理构建谷歌测试执行文件的自动工具
How to deal with autotools for building a google test exec file?
我无法生成一个测试可执行文件,该文件包含我使用autotools进行的所有谷歌测试。
我们的开发项目相当大,包含几个模块。因此,我想要的是让每个模块创建一个测试lib/对象文件,然后将这些文件放在一起创建一个单独的测试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
两者之间的真正区别是什么?如何使这些测试在我的项目中发挥作用?
Google Test的Primer wiki页面包含一个关于库中测试的特殊部分。它是为Visual C++用户编写的,但实际上也适用于GCC下的静态库。简而言之,您必须使用测试引用库,以防止链接器将它们抛出。
相关文章:
- 如何将不同的可执行文件合并到一个窗口框架中进行编码?像浏览器一样
- 如何使 windows 命令提示符在C++可执行文件上显示返回值?
- CMake:如何将库 A 链接到库 B,然后将可执行文件链接到库 A
- 如何使字符串出现在编译的二进制可执行文件的开头?
- 程序在使用 system() 启动另一个可执行文件时停止
- 用"=default"声明的函数应该只在头文件中执行
- 如何更改使用 CPack 安装的可执行文件的名称?
- 如何使jse文件执行编码.exe并静默添加启动?Javascript将文件添加到启动?
- 从 Qt(release) 生成的文件执行.EXE文件时出错
- 可以从文件执行机器代码吗?
- C ++ tiny-js 从外部文件执行 JavaScript 函数
- 如何标识其功能当前正由可执行文件执行的共享库
- 使用循环从加载的 TXT 文件执行计算时出现问题C++
- 从编译的可执行文件执行函数
- 如何使用c++对CSV文件执行逐行操作(一些x)
- 计算使用文件执行程序的次数
- ZScript文件执行到DLL
- ROS节点无法通过启动文件执行工作
- 在 VC++ 2010 中使用 MSBuild 对文件执行自定义预处理
- C++从文本文件执行代码