Гугл тест на голометалле stm32 MCU

c++ unit-testing googletest bare-metal

820 просмотра

1 ответ

5621 Репутация автора

Я использую Google test практически во всех частях моего проекта, кроме микропрограммы MCU (STM32F1). Теперь я хочу использовать его для тестов непосредственно на MCU, чтобы убедиться, что я не делал никаких машинно-зависимых ошибок, которые могут проходить тесты на x64, но терпеть неудачу на MCU. Тест Google требует libpthread, который явно отсутствует на MCU. Я использую сложный инструментарий gcc 5.2.1, поэтому он g++должен быть в состоянии построить тест Google. Системные вызовы также правильно определены, поэтому результаты тестов должны быть успешно скомпилированы и выведены на последовательную консоль.

Можно ли отключить libpthread в тесте Google и собрать его для чистого микроконтроллера? У кого-нибудь есть опыт использования юнит-тестов таким способом?

Автор: Sergey Источник Размещён: 18.07.2016 02:59

Ответы (1)


2 плюса

3059 Репутация автора

Решение

Из документа 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. Вы можете отключить его -DGTEST_HAS_PTHREAD=0при сборке gtest.

Поэтому проверьте вашу среду и посмотрите, соответствует ли она требованиям (особенно для regex.h).

Автор: Mine Размещён: 18.07.2016 03:13
Вопросы из категории :
32x32