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 spdlogCMake'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.cmakevcpkg.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=missingconanfile.txt Örneği
Gereksinimleri, üreticileri ve seçenekleri listeleyin.
[requires]
fmt/10.1.1
spdlog/1.12.0
[generators]
CMakeDeps
CMakeToolchainConan'ı 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.cmakeFetchContent: 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
- CMake Proje Düzeni ve CMakeLists.txt
- Hedefler, Bağlama ve Görünürlük: PUBLIC, PRIVATE
- Bağımlılıklar İçin vcpkg ve Conan Kullanımı
- IDE Dosyaları Oluşturma ve Platformlar Arası Derlemeler