除了MCU(STM32F1)固件之外,我几乎在项目的所有部分都使用Google测试。现在我想用它直接在MCU上进行测试,以确保我没有做任何与机器相关的错误,这可能会在x64上通过测试,但在MCU上失败。谷歌测试需要libpthread,这显然不存在于MCU上。我使用复杂的gcc 5.2.1工具链,因此它的g++
应该能够构建谷歌测试。系统调用也已正确定义,因此应成功编译测试输出并将其打印到串行控制台。
是否可以在Google测试中禁用libpthread并为裸机微控制器构建它?有没有人有过以这种方式使用单元测试的经验?
答案 0 :(得分:2)
来自gtest的文件:
Linux要求
这些是从中构建和使用Google Test的基本要求 源包(如下所述):
GNU-compatible Make or gmake POSIX-standard shell POSIX(-2) Regular Expressions (regex.h) A C++98-standard-compliant compiler
pthread
不是强制构建gtest的。在构建gtest时,您可以-DGTEST_HAS_PTHREAD=0
禁用它。
请检查您的环境,看看它是否符合要求(特别是regex.h
)。