0Pricing
C++ Academy · Ders

Bağımlılıklar İçin vcpkg ve Conan Kullanımı

vcpkg ve Conan ile harici kütüphaneleri alın ve bunları CMake ile bütünleştirin

Bağımlılıklar İçin vcpkg ve Conan Kullanımı, CoddyKit'te ücretsiz bir C++ Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, C++ Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. C++ Academy kursu toplamda 4 dersten oluşur.

Neden Paket Yöneticisi?

C++ bağımlılıklarını elle indirip derlemek zahmetlidir. Paket yöneticileri üçüncü taraf kitaplıkların alınmasını, derlenmesini ve yapılandırılmasını otomatikleştirir.

Öne Çıkan İki Seçenek

Önde gelen iki C++ paket yöneticisi:

  • vcpkg — Microsoft destekli, yalnızca kaynak kodu kullanır, CMake ile tümleşir
  • Conan — açık kaynaklıdır, ikili dosyaları destekler ve daha esnektir

vcpkg Kurulumu

vcpkg deposunu kopyalayın ve başlangıç kurulumunu yapın. CMake çağrınızda araç zinciri dosyasını ayarlayın.

git clone https://github.com/microsoft/vcpkg.git
cd vcpkg && ./bootstrap-vcpkg.sh
./vcpkg install fmt spdlog

CMake'de vcpkg ile Bağlama

CMake'i yapılandırırken araç zinciri dosyasını aktarın. Ardından find_package her zamanki gibi çalışır.

cmake -B build -DCMAKE_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/buildsystems/vcpkg.cmake

vcpkg.json Kullanımı (Bildirim Kipi)

Bağımlılıkları bir vcpkg.json dosyasında bildirin. vcpkg bunları proje başına kurar.

{
  "name": "my-app",
  "version-string": "0.1.0",
  "dependencies": ["fmt", "spdlog", "nlohmann-json"]
}

Conan Kurulumu

Conan'ı pip ile kurun; bir conanfile.txt veya conanfile.py oluşturun.

pip install conan
conan profile detect
conan install . --build=missing

conanfile.txt Örneği

Gereksinimleri, üreticileri ve seçenekleri listeleyin.

[requires]
fmt/10.1.1
spdlog/1.12.0

[generators]
CMakeDeps
CMakeToolchain

Conan'ı CMake ile Tümleştirme

install komutunu çalıştırdığınızda Conan, CMake dosyaları üretir. Bu dosyaları araç zinciri dosyası üzerinden veya üretilen CMake dosyalarını içe aktararak kullanın.

cmake -B build -DCMAKE_TOOLCHAIN_FILE=conan_toolchain.cmake

FetchContent: CMake'e Özgü Alternatif

Basit durumlarda CMake, yapılandırma sırasında bağımlılıkları indirmek ve eklemek için yerleşik FetchContent özelliğine sahiptir.

include(FetchContent)
FetchContent_Declare(fmt
    GIT_REPOSITORY https://github.com/fmtlib/fmt.git
    GIT_TAG 10.1.1
)
FetchContent_MakeAvailable(fmt)
target_link_libraries(myapp PRIVATE fmt::fmt)

Araç Seçme

Kısa kılavuz:

  • Küçük projeler → FetchContent
  • Daha büyük projeler, basit bağımlılıklar → vcpkg
  • Karmaşık derlemeler, ikili dosya önbelleği → Conan

Tekrarlanabilir Derlemeler

Bildiriminizde belirli sürümleri sabitleyin. Kilit dosyaları (conan.lock), tekrarlanabilirlik için tam olarak çözümlenen sürümleri kaydeder.

İkili Dosyaları Önbelleğe Alma

Conan ve vcpkg ikili dosyaları önbelleğe almayı destekler; sürekli tümleştirme derlemeleri kat kat hızlanır. Ekibiniz için paylaşılan bir önbellek oluşturun.

Kısa Denetim

Harici bir araç gerektirmeden yapılandırma sırasında bağımlılık indiren ve derleyen CMake mekanizması hangisidir?

Özet

vcpkg ve Conan, C++ bağımlılık yönetimini otomatikleştirir. CMake'in FetchContent özelliği hafif bir alternatiftir. Sürümleri sabitleyin, ikili dosyaları önbelleğe alın ve kurulu kitaplıkları kullanmak için CMake'de find_package kullanın.

Sıkça Sorulan Sorular

“Bağımlılıklar İçin vcpkg ve Conan Kullanımı” dersi ücretsiz mi?

Evet — “Bağımlılıklar İçin vcpkg ve Conan Kullanımı” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve C++ Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. C++ Academy kursu toplamda 4 dersten oluşur.

“Bağımlılıklar İçin vcpkg ve Conan Kullanımı” dersinde ne öğreneceğim?

vcpkg ve Conan ile harici kütüphaneleri alın ve bunları CMake ile bütünleştirin C++ Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

C++ Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te C++ Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Bağımlılıklar İçin vcpkg ve Conan Kullanımı” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu C++ Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her C++ Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. CMake Proje Düzeni ve CMakeLists.txt
  2. Hedefler, Bağlama ve Görünürlük: PUBLIC, PRIVATE
  3. Bağımlılıklar İçin vcpkg ve Conan Kullanımı
  4. IDE Dosyaları Oluşturma ve Platformlar Arası Derlemeler
← C++ Academy Sayfasına Dön