web-dev-qa-db-fra.com

Définition du compilateur par défaut dans CMake

J'utilise CMake version 2.8 sur WinXP SP3. Chaque fois que j'exécute mon script CMakeLists par défaut, CMake utilise le compilateur Visual Studio 10. J'ai essayé de faire:

SET( CMAKE_CXX_COMPILER "C:/MinGW/bin/g++" )

sans succès. Comment puis-je définir MinGW comme mon compilateur par défaut afin que je n'ai pas à me soucier de la configuration du compilateur dans les CMakeLists?

35
Amani

Avec CMake version 3.15 ou ultérieure, vous pouvez définir le CMAKE_GENERATOR variable d'environnement pour spécifier le générateur par défaut à utiliser sur votre système.

1
ComicSansMS

Sous Windows CMake tilise la dernière installation de Visual Studio comme générateur par défaut, sauf si le générateur est explicitement spécifié lors de l'appel de CMake. Ce comportement est codé en dur et ne peut pas être modifié.

Pour contourner ce problème, vous pouvez utiliser un script d'encapsuleur par lots intitulé cmake.bat avec le contenu suivant:

@cmake.exe -G "MinGW Makefiles" %*

Le script doit être placé dans un répertoire sur le système PATH et doit avoir la priorité sur l'exécutable CMake cmake.exe.

Le script appelle cmake.exe avec MinGW comme générateur et lui transmet tous les autres paramètres.

26
sakra

Vous n'avez à définir le format de la chaîne d'outils/sortie qu'une seule fois, vous le feriez généralement lors de la première exécution de cmake:

cmake -G "MinGW Makefiles" .

Au lieu du point, vous pouvez utiliser vos propres paramètres (le cas échéant) et/ou le chemin d'accès à la source.

Comme alternative, en particulier lorsque vous êtes nouveau sur CMake, utilisez la version GUI sous windows (exécutez cmake-gui sans paramètres au lieu de cmake).

Une fois ouvert, définissez vos chemins et cliquez sur "Configurer". S'il n'y a pas de compilateur, il vous demandera d'en choisir un (sinon vous devez vider le cache pour le faire réapparaître).

Les valeurs de configuration mises à jour apparaîtront en rouge et vous permettront également de sélectionner des fichiers et des chemins à l'aide des boîtes de dialogue Windows courantes.

Une fois la configuration terminée et sans erreur, vous pouvez appuyer sur "Générer" pour créer vos makefiles ou fichiers de projet. Pour les mettre à jour ultérieurement, vous pouvez utiliser cmake-gui encore ou utilisez simplement la version de ligne de commande habituelle cmake.

15
Mario