Проблема с BOOST unit_test_framework / Google Test в macOS Mojave

Во время процесса сборки (модульные тесты) возникает множество ошибок, таких как:
«ошибка: нет члена с именем ‘ххх‘в глобальном пространстве имен
с помощью::ххх;
«(‘ххх‘является типом, например uint8_t).

ПОДРОБНОСТИ:

  • если я включу только <boost / test / unit_test.hpp>, источник ошибки находится в файле / Library / Developer / CommandLineTools / usr / include / c ++ / v1 / cstdint
  • в случае, если я включу <boost / cstdint.hpp> ранее источник ошибки находится в файле /usr/local/include/boost/cstdint.hpp

СРЕДА:

  • macOS Мохаве
  • Компилятор: Clang
  • CXX_STANDARD: 11/14
  • boost v.1.67.0_1 (устанавливается с помощью homebrew в папку по умолчанию — usr / local / Cellar /)

UPD: Та же проблема (с cstdint) возникает при использовании Google Test (1.8.1)

2

Решение

После некоторого времени, проведенного с этой проблемой, я переустановил операционную систему.
Теперь у меня есть Boost и Google Test, работающие параллельно.

Я не могу быть уверен на 100% о причине проблемы, но я сравнил usr/local/include папка до и после переустановки. Я обнаружил, что есть много .cpp а также .h файлы и cstdint.hpp среди них. Сейчас usr/local/include папка содержит только символические ссылки для boost, gmock и gtest.

0

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

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