Outils pour utilisateurs

Outils du site


prog:cmake:vs

Ceci est une ancienne révision du document !


Exécution de cmake

  • toolset :
Visual Studiotoolset
80 2005
90 2008
100 2010
110 2012
120 2013
140 2015
141 2017
142 2019

Puis appeler

cmake -T v142

MSVC_TOOLSET_VERSION Archive du 20/09/2019

Activer la compilation multiprocesseur /MP

Messages d'erreur

RuntimeLibrary, MTd_StaticDebug et MDd_DynamicDebug

error LNK2038: discordance détectée pour 'RuntimeLibrary' : la valeur 'MTd_StaticDebug' ne correspond pas à la valeur 'MDd_DynamicDebug' in xxx.obj
error LNK2038: mismatch detected for 'RuntimeLibrary': value 'MTd_StaticDebug' doesn't match value 'MDd_DynamicDebug' in xxx.obj

C'est que les deux fichiers objets non pas été compilé avec le même paramètre /M (/MD, /MT, /MDd, /MTd).

Solution : ajouter CMAKE_MSVC_RUNTIME_LIBRARY (et ajuster) au CMakeLists.txt racine (cmake minimum 3.15):

set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>")
prog/cmake/vs.1617130394.txt.gz · Dernière modification : 2021/03/30 20:53 de root