J'ai eu un problème similaire en essayant d'utiliser tests unitaires boost en Visual Studio 2015 (édition communautaire) :
erreur fatale LNK1104 : libboost_unit_test_framework-vc140-mt-1_57
alors j'ai pensé que je devais partager ma solution.
Vous pouvez créer un projet de test unitaire Boost de deux façons (et cette solution fonctionne pour les deux) :
- en utilisant le Adaptateur de test de l'unité Boost
- ou en créant une application Console Win32 ( étapes ici ), et en substituant la fonction principale par une fonction de test unitaire boost ( étapes ici ).
Voici les étapes que j'ai suivies pour faire fonctionner les deux projets :
Tout d'abord, téléchargez la version boost souhaitée (par exemple, boost_1_57_0 ). Vous pouvez soit télécharger boost avec les binaires corrects (compilés avec msvc v140), soit extraire les binaires vous-même en exécutant les commandes suivantes en ligne de commande :
- bootstrap.bat
- " C:\Program Fichiers (x86) \Microsoft Visual Studio 14.0 \VC\vcvarsall.bat " x86
- bjam --clean
- bjam -j4 --debug-symbols=on --build-type=complete toolset=msvc-14.0 threading=multi runtime-link=shared adresse-modèle=32
Où msvc-14.0 précise que nous avons besoin de la version 2015 de Visual Studio (VS 2015 = v14.0 = v140), et modèle d'adresse=32 spécifie que nous avons besoin de la plate-forme 32 (mais la même chose peut être faite pour 64 bits).
Une fois que vous avez les binaires, allez dans Visual Studio, sélectionnez le projet Boost Unit Testing que vous avez créé. Allez à Propriétés du projet > configuration (à partir du menu principal) et faites les choix suivants :
-
Définissez le " Général > Plate-forme Toolset " à Visual Studio 2015 (v140).
-
Inclure le chemin d'accès au dossier "boost" (par ex. C:\boost_1_57_0 ) et le chemin d'accès au sous-dossier contenant les fichiers binaires (par ex. C:\boost_1_57_0\stage\lib ) dans :
- " C \C ++ > Répertoire d'inclusion supplémentaire "
- et " Linker > Répertoires de bibliothèques supplémentaires ".