Google тест на голометаллическом микроконтроллере stm32

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

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

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. Вы можете отключить его, -DGTEST_HAS_PTHREAD=0 при сборке гтест.

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

2

Другие решения

Других решений пока нет …