Menyiapkan lingkungan pengembangan C++

Tutorial ini menunjukkan cara menyiapkan mesin lokal untuk pengembangan C++, termasuk mengembangkan aplikasi C++ yang berjalan di Google Cloud.

Jika Anda sudah menyiapkan lingkungan pengembangan, lihat C++ dan Google Cloud untuk mendapatkan ringkasan tentang cara menjalankan aplikasi C++ di Google Cloud.

Tujuan

  • Instal versi C++ yang didukung dan kompatibel dengan Google Cloud.
  • Menginstal sistem build C++.
  • Instal editor (opsional).
  • Instal Google Cloud CLI (opsional).
  • Instal Library Klien Cloud untuk C++ (opsional).
  • Siapkan autentikasi.

Menginstal C++

Petunjuk instalasi C++ bervariasi berdasarkan sistem operasi. Ikuti panduan untuk sistem operasi yang Anda jalankan di lingkungan pengembangan, macOS, Windows, atau Linux.

macOS

  1. Anda dapat memperoleh compiler C++ dengan menginstal alat command line Xcode.

    xcode-select --install
    
  2. Setelah penginstalan selesai, pastikan compiler Anda tersedia sebagai c++:

    c++ --version
    

Windows

  1. Untuk menginstal compiler C++ di lingkungan Windows, download "Visual Studio" Microsoft dari situs Visual Studio. Tindakan ini akan mendownload IDE lengkap, termasuk editor, debugger, dan sistem build.

  2. Untuk mengakses compiler C++, ikuti bagian C++ di panduan Memulai Visual Studio.

Linux

Sebagian besar (jika tidak semua) distribusi Linux menyertakan GCC sebagai compiler C++ utamanya. Banyak distribusi Linux juga menyertakan CLang sebagai compiler C++ alternatif. Library klien C++ mendukung keduanya.

  1. Untuk menginstal C++ di lingkungan Linux, instal paket yang sesuai untuk distribusi Anda. Untuk Debian dan Ubuntu, paket ini adalah g++.

    Instal paket ini menggunakan perintah berikut:

    sudo apt update
    sudo apt install g++
    
  2. Setelah penginstalan selesai, pastikan Anda telah menginstal g++:

    g++ --version
    

Menginstal Sistem Build C++ yang kompatibel dengan Google Cloud

Agar dapat menggunakan C++ secara efektif, Anda memerlukan sistem build dan pengelola paket yang mendukung Library Klien Cloud untuk C++. Library klien mendukung banyak sistem build dan pengelola paket tersebut.

CMake dengan vcpkg

  1. Sistem operasi Anda mungkin menyediakan paket untuk CMake yang diinstal. Jika tidak, instal dari halaman download CMake

  2. Untuk menginstal vcpkg, lihat Memulai vcpkg

CMake dengan Conda

  1. Sistem operasi Anda mungkin menyediakan paket untuk CMake yang diinstal. Jika tidak, instal dari halaman download CMake

  2. Untuk menginstal Conda, lihat bagian Penginstalan di Panduan Pengguna Conda.

Bazel

  1. Untuk menginstal Bazel, lihat Menginstal Bazel

Lainnya

Jika Anda perlu menggunakan sistem build atau pengelola paket lain, repositori library klien C++ menyertakan petunjuk untuk mem-build dari sumber.

Instal editor

Ada banyak editor dan IDE yang memiliki dukungan C++. Pilih salah satu yang sesuai dengan kebutuhan Anda. Pertimbangkan fitur-fitur ini saat Anda membuat pilihan:

  • Kemampuan proses debug yang terintegrasi sepenuhnya
  • Sorotan sintaks
  • Penyelesaian kode

Menginstal Google Cloud CLI.

Google Cloud CLI adalah serangkaian alat untuk Google Cloud. Library ini berisi alat command line gcloud, gsutil, dan bq yang digunakan untuk mengakses Compute Engine, Cloud Storage, BigQuery, dan layanan lainnya dari command line. Anda dapat menjalankan alat ini secara interaktif atau dalam skrip otomatis.

Menginstal Library Klien Cloud untuk C++

Library Klien Cloud untuk C++ adalah cara idiomatis bagi developer C++ untuk berintegrasi dengan layanan Google Cloud, seperti Cloud Spanner dan Cloud Storage.

Misalnya, untuk menginstal paket untuk API individu, seperti Cloud Storage API, lakukan hal berikut:

CMake dengan vcpkg

  1. Tambahkan google-cloud-cpp sebagai dependensi ke file vcpkg.json Anda:

    {
        "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. Edit file CMakeLists.txt untuk mewajibkan library

    find_package(google_cloud_cpp_storage REQUIRED)
  3. Tambahkan dependensi ini ke target Anda

    target_link_libraries(hello_world PUBLIC google-cloud-cpp::storage)
  4. Mengonfigurasi CMake menggunakan toolchain vcpkg. Tindakan ini akan otomatis mendownload dan mengompilasi google-cloud-cpp serta dependensinya.

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

CMake dengan Conda

  1. Instal dependensi menggunakan 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. Edit file CMakeLists.txt untuk mewajibkan library

    find_package(google_cloud_cpp_storage REQUIRED)
  3. Tambahkan dependensi ini ke target Anda

    target_link_libraries(hello_world PUBLIC google-cloud-cpp::storage)
  4. Mengonfigurasi CMake dalam lingkungan Conda.

    cmake -S . -B [build directory]
    

Bazel

  1. Dalam file WORKSPACE Anda, tambahkan perintah ikuti untuk mendownload Library Klien Cloud untuk kode sumber C++:

    load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
    
    http_archive(
        name = "google_cloud_cpp",
        sha256 = "63f009092afd900cb812050bcecf607e37d762ac911e0bcbf4af9a432da91890",
        strip_prefix = "google-cloud-cpp-2.19.0",
        url = "https://github.com/googleapis/google-cloud-cpp/archive/v2.19.0.tar.gz",
    )
  2. Dalam file WORKSPACE Anda, panggil fungsi Starlark untuk memuat dependensi rekursif:

    load("@google_cloud_cpp//bazel:google_cloud_cpp_deps.bzl", "google_cloud_cpp_deps")
    
    google_cloud_cpp_deps()
    
    load("@com_google_googleapis//:repository_rules.bzl", "switched_rules_by_language")
    
    switched_rules_by_language(
        name = "com_google_googleapis_imports",
        cc = True,
        grpc = True,
    )
    
    load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps")
    
    grpc_deps()
    
    load("@com_github_grpc_grpc//bazel:grpc_extra_deps.bzl", "grpc_extra_deps")
    
    grpc_extra_deps()
  3. Di file BUILD Anda, gunakan library Cloud Storage:

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

Menyiapkan autentikasi

Untuk menggunakan Library Klien Cloud di lingkungan pengembangan lokal, siapkan Kredensial Default Aplikasi.

Buat kredensial autentikasi lokal untuk Akun Google Anda:

gcloud auth application-default login

Untuk mengetahui informasi selengkapnya, lihat Mengautentikasi penggunaan library klien.

Langkah selanjutnya