Je veux construire mes sources par le compilateur Mingw qui n'est pas placé sur mon système PATH. J'ai essayé au début de mon script:Comment définir la variable d'environnement PATH dans un script CMake?
set(Env{PATH} "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
Et ceci:
set(CMAKE_PROGRAM_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
set(CMAKE_LIBRARY_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
set(CMAKE_SYSTEM_PROGRAM_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
set(CMAKE_SYSTEM_PREFIX_PATH "c:/MyProject/Tools/mingw/bin/" "c:/MyProject/Tools/mingw/msys/1.0/bin/")
La première variante ne fonctionne pas du tout. Une suggestion que je ne peux pas écraser la valeur de la variable d'environnement dans le script CMake. Le deuxième script trouve mon compilateur mingw, mais attrape l'erreur lors de l'exécution de gcc (impossible de trouver libgmp-10.dll dont a besoin gcc). C'est parce que la variable PATH n'est pas réglée sur ma Mingw.
vous pouvez utiliser setlocal dans un script pour annuler automatiquement la modification du chemin lorsque le fichier de commandes se termine (si vous le souhaitez). Il y a aussi des variables d'environnement 'ProgramFiles (x86)' et 'ProgramFiles' qui devraient être utilisés à la place du codage' C: \ Program Files' – doug65536