Configurer un environnement de développement C++

Ce tutoriel explique comment préparer votre ordinateur local pour le développement en C++, y compris le développement d'applications C++ s'exécutant sur Google Cloud.

Si vous avez déjà configuré un environnement de développement, consultez C++ et Google Cloud pour avoir un aperçu de la procédure d'exécution d'applications C++ sur Google Cloud.

Objectifs

  • Installez une version de C++ compatible avec Google Cloud.
  • Installez un système de compilation C++.
  • Installer un éditeur (facultatif)
  • Installez Google Cloud CLI (facultatif).
  • Installer les bibliothèques clientes Cloud pour C++ (facultatif)
  • Configurez l'authentification.

Installer C++

Les instructions d'installation de C++ varient en fonction du système d'exploitation. Suivez le guide du système d'exploitation utilisé dans votre environnement de développement, macOS, Windows ou Linux.

macOS

  1. Vous pouvez obtenir un compilateur C++ en installant les outils de ligne de commande de Xcode.

    xcode-select --install
    
  2. Une fois l'installation terminée, vérifiez que votre compilateur est disponible en tant que c++ :

    c++ --version
    

Windows

  1. Pour installer un compilateur C++ dans un environnement Windows, téléchargez "Visual Studio" de Microsoft sur le site Web de Visual Studio. Un IDE complet sera alors téléchargé, y compris un éditeur, un débogueur et des systèmes de compilation.

  2. Pour accéder à votre compilateur C++, suivez la section C++ du guide Getting Started (Premiers pas) de Visual Studio.

Linux

La plupart (voire toutes) des distributions Linux incluent GCC comme compilateur C++ principal. De nombreuses distributions Linux incluent également CLang comme compilateur C++ alternatif. Les bibliothèques clientes C++ sont compatibles avec les deux.

  1. Pour installer C++ dans un environnement Linux, installez les packages correspondant à votre distribution. Pour Debian et Ubuntu, ce package est g++.

    Installez ces paquets en utilisant les commandes suivantes :

    sudo apt update
    sudo apt install g++
    
  2. Une fois les installations terminées, vérifiez que g++ est installé :

    g++ --version
    

Installer un système de compilation C++ compatible avec Google Cloud

Pour utiliser efficacement C++, vous aurez besoin d'un système de compilation et d'un gestionnaire de packages compatibles avec les bibliothèques clientes Cloud pour C++. Les bibliothèques clientes sont compatibles avec plusieurs systèmes de compilation et gestionnaires de packages de ce type.

CMake avec vcpkg

  1. Votre système d'exploitation peut fournir des packages pour CMake installé. Si ce n'est pas le cas, installez-le à partir de la page de téléchargement de CMake.

  2. Pour installer vcpkg, consultez Premiers pas avec vcpkg.

CMake avec Conda

  1. Votre système d'exploitation peut fournir des packages pour CMake installé. Si ce n'est pas le cas, installez-le à partir de la page de téléchargement de CMake.

  2. Pour installer Conda, consultez la section Installation du guide de l'utilisateur de Conda.

Bazel

  1. Pour installer Bazel, consultez Installer Bazel.

Autre

Si vous devez utiliser un autre système de compilation ou gestionnaire de packages, le dépôt des bibliothèques clientes C++ inclut des instructions pour compiler à partir de la source.

Installer un éditeur

Il existe de nombreux éditeurs et IDE compatibles avec C++. Choisissez celui qui correspond à vos besoins. Tenez compte des fonctionnalités suivantes lorsque vous faites votre choix :

  • Outils de débogage entièrement intégrés
  • Coloration syntaxique
  • Complétion de code

Installer Google Cloud CLI

Google Cloud CLI est un ensemble d'outils pour Google Cloud. Il contient les outils en ligne de commande gcloud et bq utilisés pour accéder à Compute Engine, Cloud Storage, BigQuery et d'autres services à partir de la ligne de commande. Exécutez ces outils de façon interactive ou dans des scripts automatisés.

Installer les bibliothèques clientes Cloud pour C++

Les bibliothèques clientes Cloud pour C++ constituent le moyen idiomatique dont disposent les développeurs C++ pour intégrer les servicesGoogle Cloud , tels que Spanner et Cloud Storage.

Par exemple, pour installer le package d'une API spécifique, telle que l'API Cloud Storage, procédez comme suit :

CMake avec vcpkg

  1. Ajoutez google-cloud-cpp comme dépendance à votre fichier vcpkg.json :

    {
        "name": "setup-cpp-vcpkg",
        "version-string": "unversioned",
        "description": "Setting up C++ for Google Cloud with CMake and vcpkg",
        "dependencies": [
            {"name": "google-cloud-cpp", "default-features": false, "features": ["storage"]}
        ]
    }
    
  2. Modifiez votre fichier CMakeLists.txt pour exiger la bibliothèque.

    find_package(google_cloud_cpp_storage REQUIRED)
  3. Ajoutez cette dépendance à vos cibles

    target_link_libraries(hello_world PUBLIC google-cloud-cpp::storage)
  4. Configurez CMake à l'aide de la chaîne d'outils vcpkg. Cela téléchargera et compilera automatiquement google-cloud-cpp et ses dépendances.

    cmake -S . -B [build directory] \
        -DCMAKE_TOOLCHAIN_FILE=[vcpkg location]/scripts/buildsystems/vcpkg.cmake
    

CMake avec Conda

  1. Installez les dépendances à l'aide de Conda :

    conda config --add channels conda-forge
    conda config --set channel_priority strict
    conda install -y -c conda-forge cmake ninja cxx-compiler google-cloud-cpp libgoogle-cloud
  2. Modifiez votre fichier CMakeLists.txt pour exiger la bibliothèque.

    find_package(google_cloud_cpp_storage REQUIRED)
  3. Ajoutez cette dépendance à vos cibles

    target_link_libraries(hello_world PUBLIC google-cloud-cpp::storage)
  4. Configurez CMake dans votre environnement Conda.

    cmake -S . -B [build directory]
    

Bazel

  1. Dans votre fichier WORKSPACE, ajoutez la commande suivante pour télécharger le code source des bibliothèques clientes Cloud pour C++ :

    load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
    
    http_archive(
        name = "google_cloud_cpp",
        sha256 = "db69dd73ef4af8b2e816d80ded04950036d0e0dccc274f8c3d3ed1d7f5692a1b",
        strip_prefix = "google-cloud-cpp-2.32.0",
        url = "https://github.com/googleapis/google-cloud-cpp/archive/v2.32.0.tar.gz",
    )
  2. Dans votre fichier WORKSPACE, appelez les fonctions Starlark pour charger les dépendances récursives :

    load("@google_cloud_cpp//bazel:workspace0.bzl", "gl_cpp_workspace0")
    
    gl_cpp_workspace0()
    
    load("@google_cloud_cpp//bazel:workspace1.bzl", "gl_cpp_workspace1")
    
    gl_cpp_workspace1()
    
    load("@google_cloud_cpp//bazel:workspace2.bzl", "gl_cpp_workspace2")
    
    gl_cpp_workspace2()
    
    load("@google_cloud_cpp//bazel:workspace3.bzl", "gl_cpp_workspace3")
    
    gl_cpp_workspace3()
    
    load("@google_cloud_cpp//bazel:workspace4.bzl", "gl_cpp_workspace4")
    
    gl_cpp_workspace4()
    
    load("@google_cloud_cpp//bazel:workspace5.bzl", "gl_cpp_workspace5")
    
    gl_cpp_workspace5()
  3. Dans votre fichier BUILD, utilisez la bibliothèque Cloud Storage :

    cc_binary(
        name = "hello_world",
        srcs = ["hello_world.cc"],
        deps = ["@google_cloud_cpp//:storage"],
    )

Configurer l'authentification

Pour utiliser les bibliothèques clientes Cloud dans un environnement de développement local, configurez les Identifiants par défaut de l'application.

If you're using a local shell, then create local authentication credentials for your user account:

gcloud auth application-default login

You don't need to do this if you're using Cloud Shell.

If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.

Pour en savoir plus, consultez la section S'authentifier à l'aide des bibliothèques clientes.

Étapes suivantes