Créer un projet Linux CMake dans Visual Studio

La prise en charge Linux est disponible dans Visual Studio 2017 et ultérieur. Pour afficher la documentation sur ces versions, définissez la liste déroulante Version située au-dessus de la table des matières sur Visual Studio 2017 ou Visual Studio 2019.

Nous vous recommandons d’utiliser CMake pour les projets qui sont multiplateformes ou qui seront rendus open source. Vous pouvez utiliser des projets CMake pour générer et déboguer le même code source sur Windows, le sous-système Windows pour Linux (Windows Subsystem for Linux, WSL) et des systèmes distants.

Avant de commencer

Tout d’abord, vérifiez que la charge de travail Visual Studio Linux est installée, y compris le composant CMake. Il s’agit de la charge de travail de développement Linux avec C++ dans le programme d’installation de Visual Studio. Si vous n’êtes pas certain qu’elle est installée, consultez Installer la charge de travail Linux C++ dans Visual Studio.

Assurez-vous également que les éléments suivants sont installés sur la machine distante :

  • gcc
  • gdb
  • rsync
  • zip
  • ninja-build (Visual Studio 2019 ou version ultérieure)

La prise en charge de CMake dans Visual Studio nécessite la prise en charge du mode serveur introduit dans CMake 3.8. Pour une variante de CMake fournie par Microsoft, téléchargez les fichiers binaires prédéfinis les plus récents à partir de https://github.com/Microsoft/CMake/releases.

Les fichiers binaires sont installés dans ~/.vs/cmake. Après le déploiement des fichiers binaires, le projet se régénère automatiquement. Si le CMake spécifié par le champ cmakeExecutable dans CMakeSettings.json n’est pas valide (n’existe pas ou correspond à une version non prise en charge) et que des binaires prédéfinis sont présents, Visual Studio ignore cmakeExecutable et utilise les binaires prédéfinis.

Visual Studio 2017 ne peut pas créer un projet CMake à partir de rien, mais vous pouvez ouvrir un dossier contenant un projet CMake existant, comme décrit dans la section suivante.

Vous pouvez utiliser Visual Studio 2019 pour générer et déboguer sur un système Linux distant ou WSL. CMake sera appelé sur ce système. Cmake version 3.14 ou ultérieure doit être installé sur la machine cible.

Vérifiez que la machine cible dispose d’une version récente de CMake. Souvent, la version proposée par le gestionnaire de package par défaut d’une distribution n’est pas assez récente pour prendre en charge toutes les fonctionnalités que Visual Studio requiert. Visual Studio 2019 détecte si une version récente de CMake est installée sur le système Linux. Si aucune n’est trouvée, Visual Studio affiche une barre d’informations en haut du volet de l’éditeur. Il propose d’installer CMake pour vous à partir de https://github.com/Microsoft/CMake/releases.

Avec Visual Studio 2019, vous pouvez créer un projet CMake à partir de rien, ou ouvrir un projet CMake existant. Pour créer un projet CMake, suivez les instructions ci-dessous. Ou passez directement à Ouvrir un dossier de projet CMake si vous avez déjà un projet CMake.

Créer un projet Linux CMake

Pour créer un nouveau projet Linux CMake dans Visual Studio 2019 :

  1. Sélectionnez Fichier > Nouveau projet dans Visual Studio, ou appuyez sur Ctrl+Maj+N.
  2. Définissez le Langage sur C++ et recherchez « CMake ». Ensuite, choisissez Suivant. Entrez un Nom et un Emplacement, puis choisissez Créer.

Vous pouvez également ouvrir votre propre projet CMake dans Visual Studio 2019. La section suivante explique comment procéder.

Visual Studio crée un fichier CMakeLists.txt minimal avec uniquement le nom de l’exécutable et la version de CMake minimale requise. Vous pouvez modifier manuellement ce fichier à votre convenance ; Visual Studio ne remplacera jamais vos changements.

Pour vous aider à comprendre, modifier et créer vos scripts CMake dans Visual Studio 2019, consultez les ressources suivantes :

Ouvrir un dossier de projet CMake

Lorsque vous ouvrez un dossier contenant un projet CMake existant, Visual Studio utilise des variables dans le cache CMake pour configurer automatiquement IntelliSense et les builds. Les paramètres de configuration et de débogage locaux sont stockés dans des fichiers JSON. Vous pouvez éventuellement partager ces fichiers avec d’autres utilisateurs de Visual Studio.

Visual Studio ne modifie pas les fichiers CMakeLists.txt. Cela permet aux autres personnes travaillant sur le même projet de continuer à utiliser leurs outils existants. Visual Studio régénère le cache lorsque vous enregistrez des modifications apportées au fichier CMakeLists.txt ou, dans certains cas, au fichier CMakeSettings.json. Si vous utilisez une configuration de Cache existant, Visual Studio ne modifie pas le cache.

Pour obtenir des informations générales sur la prise en charge de CMake dans Visual Studio, consultez Projets CMake dans Visual Studio. Lisez cet article avant de continuer ici.

Pour commencer, choisissez Fichier>Ouvrir>Dossier dans le menu principal, ou tapez devenv.exe <foldername> dans une fenêtre d’invite de commandes développeur. Le dossier que vous ouvrez doit contenir un fichier CMakeLists.txt, ainsi que votre code source.

L’exemple suivant montre un fichier CMakeLists.txt et un fichier .cpp simples :

// hello.cpp

#include <iostream>

int main(int argc, char* argv[])
{
    std::cout << "Hello from Linux CMake \n";
}

CMakeLists.txt :

cmake_minimum_required(VERSION 3.8)
project (hello-cmake)
add_executable(hello-cmake hello.cpp)

Étapes suivantes

Configurer un projet CMake Linux

Voir aussi

Projets CMake dans Visual Studio