У меня была аналогичная проблема при попытке использовать ускоренное модульное тестирование в Visual Studio 2015 (Community Edition):
фатальная ошибка LNK1104: libboost_unit_test_framework-vc140-mt-1_57
поэтому я подумал, что поделюсь своим решением.
Вы можете создать проект ускоренного модульного тестирования двумя способами (и это решение работает для обоих):
- с помощью адаптера для тестирования Boost Unit
- или путем создания консольного приложения Win32 ( шаги здесь ) и замены основной функции на функцию модульного тестирования boost ( шаги здесь ).
Вот шаги, которые я выполнил, чтобы оба проекта заработали:
Сначала загрузите желаемую версию boost (например, boost_1_57_0 ). Вы можете либо загрузить boost с правильными двоичными файлами (скомпилированными с использованием msvc v140), либо извлечь двоичные файлы самостоятельно, выполнив следующие команды из командной строки:
- bootstrap.bat
- «C: \ Program Files (x86) \ Microsoft Visual Studio 14.0 \ VC \ vcvarsall.bat» x86
- bjam - чистый
- bjam -j4 --debug-symbols = on --build-type = complete toolset = msvc-14.0 threading = multi runtime-link = shared address-model = 32
Где msvc-14.0 указывает, что нам требуется версия Visual Studio 2015 (VS 2015 = v14.0 = v140), а address-model = 32 указывает, что нам требуется платформа 32 (но то же самое можно сделать для 64-разрядной версии).
Когда у вас есть двоичные файлы, перейдите в Visual Studio, выберите созданный вами проект Boost Unit Testing. Перейдите в Свойства проекта> конфигурация (из главного меню) и сделайте следующие варианты:
Установите « Общие> Набор инструментов платформы » на Visual Studio 2015 (v140).
Включите путь к папке boost (например, C: \ boost_1_57_0) и путь к подпапке, содержащей двоичные файлы (например, C: \ boost_1_57_0 \ stage \ lib) в:
- " C \ C ++> Дополнительный каталог для включения "
- и « Компоновщик> Дополнительные каталоги библиотек ».