Číst v angličtině

Sdílet prostřednictvím


Podporovaní hostitelé

Tento dokument popisuje architektury a operační systémy podporované nástrojem vcpkg.

Závislosti

Vcpkg také závisí na několika systémových součástech, které se mají nainstalovat před spuštěním.

Pokud chcete použít vcpkg, musí být nejprve v systému nainstalováno několik komponent.

  • Windows: Visual Studio 2015 nebo novější.
  • macOS: Nástroje příkazového řádku Xcode, tar, git, zip, unzip a curl. Většina portů také potřebuje pkg-config. Tyto závislosti doporučujeme nainstalovat prostřednictvím Homebrew, například příkazem terminálu brew install zip unzip curl pkgconfig.
  • Linux: Kompilátor C++ pro použití, tar, git, zip, rozbalení a curl. Většina portů také potřebuje pkg-config. Tyto závislosti doporučujeme nainstalovat pomocí správce systémových balíčků.
    • Platformy založené na apt: apt install git curl zip unzip pkgconfig
    • platformy založené na rpm: dnf install git curl zip unzip pkgconfig
    • platformy založené na pacmanech: base-devel git curl zip unzip tar cmake ninja

Pro uživatele s Linuxem a macOS doporučujeme nainstalovat také následující balíčky: autoconf, autoconf-archive, automakemake a libtool. I když to není nutné, tyto balíčky se často používají knihovnami dostupnými v vcpkg.

Kurátorované úrovně podpory registru

Podpora je rozdělená do 4 různých kategorií. Mezi ně patří:

  • Úplná podpora, otestovaná
    Konfigurace používané k pravidelnému otestování registru vcpkg. Problémy v těchto konfiguracích jsou rychle nalezeny a opraveny správci a komunitou vcpkg.
  • Úplná podpora, očekávaná
    Konfigurace se zpracovávají se stejnou prioritou jako úplná podpora, otestovaná, ale nejsou součástí pravidelných testů. Obecně platí, že tyto konfigurace jsou podstatně podobné jedné z plně otestovaných konfigurací.
  • Podpora komunity
    Konfigurace, které správci vcpkg aktivně nepodporují, ale mají značné investice do komunity. Správci vcpkg přijímají změny, které opravují problémy s těmito platformami, ale neposkytují záruky, že tyto konfigurace fungují. Tým vcpkg se zajímá o přesun co nejvíce platforem z podpory komunity na plnou podporu.
  • Nepodporuje se
    Konfigurace, o kterých se z nějakého důvodu neví, že nefungují. Obecně platí, že žádosti o přijetí změn, které opravují pouze tyto platformy, nejsou přijímány.

Úplná podpora, otestovaná

Plně podporované, testované platformy jsou:

Windows

  • Nejnovější verze Windows nebo Windows Serveru. Jedná se o Windows 11 a Windows Server 2022 v tomto zápisu.
  • Nejnovější aktualizace sady Visual Studio, Visual Studio 2022 verze 17.11 od tohoto psaní.

macOS

macOS je určený ke sledování nejnovější verze macOS a současné verze nástrojů příkazového řádku Xcode. Aktualizace počítačů s macOS je ale ruční proces a macOS často mění věci způsoby, které přerušují testování vcpkg. V tomto článku používáme:

  • macOS 14.5
  • Nástroje příkazového řádku XCode 15.3

Linux

  • Nejnovější verze LTS Ubuntu, aktuálně 22.04.

Android

  • Linux 64bitová verze Androidu NDK verze r26d

Úplná podpora, očekávaná

Windows

  • Windows 8.1 / Windows Server 2016 a novější
  • Visual Studio 2015 a novější

macOS

  • Nejnovější verze macOS minus 2 hlavní verze. Například aktuální verze macOS je macOS 15 Sequoia, takže očekáváme, že vcpkg bude fungovat až do macOS 13 Ventura. Toto je určeno ke sledování pomocí vlastní podpory Apple pro macOS.
  • Současné verze nástrojů příkazového řádku Xcode pro danou verzi macOS.

Linux

Hodláme podporovat buildy AMD64 linuxů založených na glibc stále v podpoře od jejich dodavatele distribuce vydané v posledních 5 letech. Příklady:

  • Ubuntu 24.04, 22.04 a 20.04 jsou podporovány od Canonical a vydány během posledních 5 let, takže se očekává, že budou fungovat. Ubuntu 18.04 je stále podporováno od Canonical, ale bylo vydáno před více než 5 lety, takže už ji nepovažujeme za plně podporovanou. 20.10 je novější než 20.04, ale nepovažujeme ji za plně podporovanou, protože již není podporována od Společnosti Canonical.
  • Red Hat Enterprise Linux 9 je plně podporovaný.
  • CentOS a Red Hat Enterprise Linux 8 opustily podporu z Red Hatu 31. května 2024 a byly vydány před více než 5 lety, a proto se už nepodporuje.
  • CentOS a RHEL 7 nejsou podporovány z Red Hatu a neočekává se, že budou fungovat, protože byly vydány před více než 5 lety. Fork Oracle Pro Linux podporovaný společností Oracle je stále podporován společností Oracle, ale stále se neočekává, že bude fungovat, protože byl vydán před více než 5 lety.
  • Fedora 40 a 39 jsou plně podporovány, ale Fedory už 38 nepodporuje.
  • Debian 12 "Bookworm" a 11 "Bullseye" jsou podporovány Debianem a vydány v posledních 5 letech. Debian 10 "Buster" opustil podporu z projektu Debian v červenci 2024, a proto ho vcpkg nepodporuje.

Předpokládáme také, že se systémy sestavení uživatelů budou shodovat s verzí Linuxu, kterou používají, a zajistíme, aby součásti, jako je naše integrace CMake v režimu manifestu, fungovaly s verzemi těchto závislostí, které jsou součástí některého z výše uvedených distribucí. Od tohoto zápisu jsou tyto verze závislostí a přidružené distribuce:

  • GCC 9.4.0 (Ubuntu 20.04)
  • CMake 3.16.3 (Ubuntu 20.04)
  • Ninja 1.10.0 (Vše)
  • Curl 7.68 (Ubuntu 20.04)
  • zip 3.0 (Vše)
  • rozbalit 6.0 (vše)

Podpora od komunity

Windows

  • Windows 7 / Windows Server 2008 R2 a novější

vcpkg.exe by měla fungovat na verzích Systému Windows 7, ale velká většina kurátorovaných registrů vyžaduje součásti MSYS2, jako pkg-config je tomu u starších než 8.1 systému Windows.

  • MinGW nebo Clang jako kompilátor sestavení.

V současné době vcpkg má řadu předpokladů sady Visual Studio; zejména naše funkce, které kopírují odpovídající soubory PDB pro spustitelné soubory v současné době vyžadují výpis paměti, součást sady Visual Studio. Máme řadu vyhrazených členů komunity, kteří se ale zajímají o podporu MinGW, a do boxu zahrnou sadu nástrojů MinGW.

Linux

  • Linux bez AMD64. Velmi nás zajímá pomoc lidí, kteří cílí na arm64 Linux, pokud se dá ukázat, jak dodávat binární soubory, které mají vysokou pravděpodobnost úspěšného spuštění na všech hardwaru Arm64 Linux.
  • Ne glibc Linux. Několik nástrojů vcpkg obvykle poskytuje pro vás jsou distribuovány v binárních formulářích, které očekávají, že systém libc bude glibc. Poskytujeme binární soubor založený na muslc vcpkg, který jsme otestovali pro práci na Alpine, ale nedokážeme poskytnout muslcové kopie řady závislostí, jako je CMake.

BSD nebo jiné systémy POSIX

Na cílech BSD není k dispozici žádný binární soubor vcpkg ke stažení. Místo toho logika bootstrap stáhne zdrojový kód vcpkg a zkompiluje ho místně.

Závislosti

Vcpkg vyžaduje řadu softwarových balíčků, které nejsou součástí operačního systému a musí být nainstalovány pomocí správce balíčků:

  • FreeBSD: pkg install -y bash cmake curl git ninja zip unzip
  • OpenBSD: pkg_add -Iz bash cmake coreutils curl git ninja zip unzip-6.10-iconv

Stejně jako v Linuxu se doporučuje nainstalovat také některé další balíčky:

  • FreeBSD: pkg install -y autoconf autoconf-archive gmake pkgconf python
  • OpenBSD: pkg_add -Iz autoconf-2.71 autoconf-archive gmake pkgconf python3

Upozornění

  • vcpkg spustí unzip z PATH. Nakonec to může způsobit, že vcpkg spustí operační systém poskytnutý unzip i přes další instalaci pomocí správce balíčků. PATH Proměnná prostředí musí být nakonfigurovaná tak, aby preferovala třetí stranu před druhou stranouunzip, nebo se vcpkg nepodaří extrahovat binární mezipaměť.

Nepodporované

  • 32bitová verze Windows. Cílení na x86-windows nebo arm-windows funguje dobře, ale vcpkg sám očekává, že spustí kopie nástrojů podpory AMD64, jako je CMake.
  • Visual Studio 2013 nebo starší
  • Windows Vista nebo starší.
  • Hostitelé macOS nebo Linux, kteří jsou starší než hostitelé v plně podporovaných kategoriích.