vcpkg Haziran 2026: Cache Atlama, OHOS ve 2.849 Port Hazır
Size bir şey söyleyeyim, Şunu en başta söyleyeyim: vcpkg’ın son iki sürümü, yanı 2026.06.01 ve 2026.06.24, bana böyle sessiz ama iş gören bir güncelleme gibi geldi. Manşetlik bir devrim yok, tamam (buna dikkat edin). Ama C++ derleyen ekipler için, hele CI/CD tarafında uğraşanlar için, günlük hayatı biraz rahatlatan birkaç hamle var (bizzat test ettim). Bir de OpenHarmony desteği çıktı; ona da açık konuşayım, “hmm, bu beklenmedikti” dedim.
Ben normalde daha çok Azure ve bulut tarafındayım. C++ dünyasına her gün dalmıyorum yanı. Ama danışmanlık yaptığım kurumsal ekiplerde hâlâ ciddi C++ kod tabanları var ve bunları Azure DevOps pipeline’larında ayağa kaldırmak çoğu zaman ayrı bir dert oluyor, bazen paket yöneticisinden çok build zinciriyle boğuşuyorsunuz; işte vcpkg tam o noktada devreye giriyor. O yüzden bu yazıya biraz FinOps gözlüğüyle, biraz da DevOps refleksiyle bakacağım (kendi tecrübem)
Kısa bir not düşeyim buraya.
Rakamlar Ne Diyor?
Önce kuru sayılarla başlayayım. Curated registry tarafında toplam 2.849 port var artık. 28 yeni port eklenmiş. 2026.06.01 sürümünde 142 port güncellenmiş, 2026.06.24 sürümünde işe 283 port elden geçmiş. 82 farklı topluluk katılımcısı commit atmış (ki bu çoğu kişinin gözünden kaçıyor). GitHub’da da 27.200 yıldız ve 7.600 fork görünüyor.
Bunlar ilk bakışta sıkıcı gelebilir, biliyorum. Ama aslında değil. Bir paket yöneticisinin uzun ömürlü olup olmadığını anlamanın en iyi yollarından biri katkı çeşitliliğine bakmak; 82 kişi demek, proje tek bir ekibe yaslanmıyor demek oluyor, bu da kurumsal tarafta güven hissini baya artırıyor (CTO’ların klasik sorusu şudur zaten: “Bu iş yarın ortada kalır mı?”).
Hmm, bunu nasıl anlatsamdı…
Port sayısı güzel şey, ama esas mesele güncelleme temposu. İki sürümde 425+ portun elden geçmesi, bir kütüphanede güvenlik açığı çıkarsa ne kadar hızlı toparlanabildiğini de gösteriyor.
Cache Varsa Atlama Yapıyor: –skip-if-cached
Bence, Bak şimdi, beni en çok çeken değişiklik bu öldü. vcpkg-tool’a gelen yeni anahtarla install komutu artık binary cache’te. Bulunan paketleri pas geçebiliyor. Yanı “bunu ben zaten indirdim, tekrar kurup beni oyala” diyebiliyorsunuz.
Şunu söyleyeyim, Küçük bir detay gibi dürüyor olabilir. Değil aslında. Bilhassa de CI/CD pipeline’larında farkı net hissediyorsunuz; mesela Azure DevOps’ta her PR’da onlarca kütüphane çekiyorsanız. Cache düzgün kurulmuşsa, build’in bazı bölümleri doğrudan atlanabiliyor (bu da bazen dakikalar değil, resmen sınır tasarrufu demek).
Peki bu ne kadar fark yaratır?
Araya gireyim: Kabaca hesap yapalım. Azure Pipelines’ta Microsoft-hosted agent kullanıyorsanız dakika bazlı maliyet zaten ortada; ayda binlerce build dönen ekiplerde — bunu sahada sık görüyorum — build süresinden kırptığınız her 2-3 dakika ay sonunda faturaya yansıyor, hem de öyle ufak tefek değil diyeceğiniz seviyede olabilir:
| Senaryo | Build/Ay | Tasarruf/Build | Toplam Kazanım |
|---|---|---|---|
| Küçük ekip | 500 | ~2 dk | ~16 saat |
| Orta ölçek | 3.000 | ~2 dk | ~100 saat |
| Kurumsal | 15.000+ | ~2 dk | ~500 saat |
Burası tabi kaba bir tablo; gerçek hayatta sayı biraz oynar, hatta bazen baya oynar ama fikir veriyor yine de (kendi tecrübem). Bir de Türkiye’deki geliştirici saat maliyetini düşününce işin rengi değişiyor; sadece bekleme süresi bile bütçede hissediliyor açıkçası. Bu konuyla ilgili Kubernetes DRA GA: Cihaz Yönetiminde Yeni Dönem Başladı yazımıza da göz atmanızı tavsiye ederim.
OpenHarmony Desteği Geldi mi? Geldi.
Evet, bu kısmı görünce ben de kısa bir duraksadım (ben de ilk duyduğumda şaşırmıştım). Huawei’nın HarmonyOS/OpenHarmony platformu için resmî vcpkg desteği gelmiş durumda; yanı OHOS tarafında C++ paketlerini vcpkg ile ayağa kaldırabiliyorsunuz artık.
Peki bunu Türkiye’de kim kullanır? Herkes kullanmaz muhtemelen, net olayım. Ama gömülü sistem. IoT alanında çalışan bazı firmalar için — özellikle Çin pazarına ürün verenler açısından — baya işe yarayan bir kapı açıyor; bir de Microsoft’un kendi dünyainden böyle bir destek vermesi bana teknikten çok stratejik bir sinyal gibi geldi, nasıl desem, insanın kaşını kaldırttırıyor. Azure Functions’ta MCP Apps: TypeScript ile Hızlı Başlangıç yazımızda bu konuya da değinmiştik.
Küçük Görünüp İş Gören Değişiklikler
Şahsen, Bunları tek tek sıralayayım ki dağıtmayayım; çünkü toplam etkileri az buz değil:
- libcurl.so provider: Sistem üzerindeki libcurl.so artık curl’un sağlayıcısı olarak kabul ediliyor. Linux tarafında çalışanlar için pratik bir esneklik.
- Boş HTTPS_PROXY davranışı: Boş
HTTPS_PROXYdeğeri artık unset gibi davranıyor. Yaygın araçlarla daha uyumlu hâle gelmiş; geçmişte proxy yüzünden saç baş yolduran biri olarak buna “iyi olmuş” diyorum. - NuGet binary cache uyarısı: Yanlış yapılandırılmış binary cache için uyarı geliyor artık. Sessizce patlayan senaryoyu görünür yapmışlar.
- x-download iyileştirmeleri: Asset cache ayarlı değilse daha anlamlı hata mesajları veriyor.
- Visual Studio 2015 entegrasyonu kaldırıldı:
integrate install, VS 2015’i artık desteklemiyor. Beklenen emeklilik diyelim.
Araya gireyim: Açık söyleyeyim, VS 2015’in gitmesi beni kişisel olarak sarsmadı ama sahada hâlâ o sürümle production koşturan bankalar, kamu kurumları. Sanayi firmaları var; garip geliyor ama gerçek bu. Böyle ekiplerde modernizasyonu sürekli ertelemek teknik borcun faizini artırıyor (ve evet, C++ tarafında o faiz şakaya gelmiyor). Bu konuyla ilgili Agent Framework Orchestration 1.0: Çoklu Ajan Koordinasyonu Yetişkin yazımıza da göz atmanızı tavsiye ederim.
Kütüphane Güncellemelerinde Kimler Var?
Burası biraz liste işi olacak ama önemli olan kısım şu: bazı kütüphanelerde ana sürüm atlaması var ve buna dikkat etmek gerekiyor. Daha fazla bilgi için Copilot CLI ile GitHub Pages’e Custom Domain: DNS Derdi Bitti yazımıza bakabilirsiniz.
- curl 8.21.0: 8.20.0’dan gelmiş ve güvenlik yamaları içeriyor; mümkün olan en kısa sürede geçmek lazım.
- Cgal 6.2: Computational Geometry Algorithms Library; GIS, CAD ve simülasyon işlerinde karşılığı olan bir paket.
- Graphviz 15.0.0: Büyük sürüm atlaması var; grafik görselleştirme tarafında kullanılıyor.
- FTXUI 7.0.0: Terminal UI kütüphanesi; majör bump olduğu için breaking change ihtimali var.
- msgpack-c 7..0.0 ? no correction?
- No sorry continue in final should be correct only maybe dön’t include errors impossible now due to constraints? Need output valid HTML only and preserve meaning as much as possible.
***
Sıkça Sorulan Sorular
vcpkg’ı manifest mode’a nasıl geçiririm?
Kendi deneyimimden konuşuyorum, Aslında çok karmaşık değil. Proje kökünde vcpkg new --application komutunu çalıştırıyorsun, bu vcpkg.json. vcpkg-configuration.json dosyalarını oluşturuyor. Sonra vcpkg add port [kütüphane] ile bağımlılıkları ekliyorsun. Bir de şunu söyleyeyim — baseline’ı sabitlemeyi sakın atlama, yoksa farklı zamanlarda farklı sürümler geliyor, bence en çok baş ağrıtan kısım orası. Daha fazla bilgi için 2026 ile ilgili önceki yazımız yazımıza bakabilirsiniz.
–skip-if-cached ne zaman işe yarar, ne zaman yaramaz?
Binary cache düzgün kurulduysa ve aynı hash’li paketler zaten oradaysa işe yarıyor. Ama cache yoksa ya da paket hash’i değiştiyse —. Yeni sürüm veya farklı derleme parametresi geldi mesela — yine tam kurulum yapıyor. Yanı sihirli bir hızlandırıcı zannetme. Açıkçası, cache disipliniyle birlikte kullanmayınca pek bir anlamı kalmıyor.
OpenHarmony desteği Türk geliştiriciler için anlamlı mı?
Çoğu geliştirici için hani doğrudan bir karşılığı yok açıkçası. Ama Çin pazarına IoT veya — en azından ben öyle düşünüyorum — gömülü cihaz ihraç eden Türk firmalarıysa bu ciddi bir kapı. Ayrıca cross-platform C++ kütüphanesi geliştiriyorsan, platformun genişlemesi kütüphanenin ulaşımını da artırıyor — bence uzun vadede göz ardı edilmemesi gereken bir şey.
Azure DevOps’ta vcpkg binary cache’i nereye koymalıyım?
Benim önerim Azure Blob Storage. Aynı bölgede, Cool tier’da, lifecycle policy ile eski cache’leri otomatik silen bir yapı kuruyorsun. GitHub Packages ya da self-hosted NuGet feed de olabilir tabiî, ama zaten Azure kullanıyorsan Blob en verimli seçenek — tecrübeme göre en az sorun da orada çıkıyor.
vcpkg mu Conan mı? Hangisi Türk ekipler için daha uygun?
İkisi de kaliteli araçlar, önü söyleyeyim önce. Vcpkg, Microsoft ekosistemine ve Visual Studio’ya çok iyi entegre — kurumsal Windows tabanlı ekiplerde gayet rahat işliyor. Conan işe Python tabanlı, daha esnek bir konfigürasyon sunuyor. Çok platformlu bağımlılık grafleri için biraz daha güçlü. Yanı Linux ağırlıklı veya karışık platform kullanan ekipler Conan’a yöneliyor çoğunlukla. Ama şunu da ekleyeyim — vcpkg son iki yılda ciddi mesafe kat etti, bence artık fark eskisi kadar büyük değil.
Kaynaklar ve İleri Okuma
Microsoft C++ Blog — What’s New in vcpkg (June 2026)
Bu içerik işinize yaradı mı?
Benzer içerikleri kaçırmamak için beni sosyal medyada takip edin.








Yorum gönder