У мене була подібна проблема при спробі використовувати модульне тестування посилення у Visual Studio 2015 (Community Edition):
фатальна помилка LNK1104: libboost_unit_test_framework-vc140-mt-1_57
тож я подумав поділитися своїм рішенням.
Ви можете створити проект підсилення модульного тестування двома способами (і це рішення працює для обох):
- за допомогою адаптера Boost Unit Test
- або створивши консольну програму Win32 ( кроки тут ) і замінивши основну функцію функцією модульного тестування підсилення ( кроки тут ).
Ось кроки, якими я керувався, щоб обидва проекти запрацювали:
Спочатку завантажте потрібну версію 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 threadading = 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 ++> Додатковий каталог включень "
- та " Linker> Додаткові каталоги бібліотек ".