Поддерживаемые узлы
В этом документе описаны архитектуры и операционные системы, поддерживаемые vcpkg.
Vcpkg также зависит от нескольких системных компонентов, которые необходимо установить перед запуском.
Чтобы использовать vcpkg, сначала необходимо установить несколько компонентов в системе.
- Windows: Visual Studio 2015 или более поздней версии.
- macOS: средства командной строки Xcode, tar, git, zip, распакуйте и curl. Большинство портов также требуются
pkg-config
. Мы рекомендуем установить эти зависимости через Homebrew, например с помощью командыbrew install zip unzip curl pkgconfig
терминала. - Linux: компилятор C++ для использования, tar, git, zip, unzip и curl. Большинство портов также требуются
pkg-config
. Мы рекомендуем установить эти зависимости с помощью диспетчера системных пакетов.- Платформы на основе apt:
apt install git curl zip unzip pkgconfig
- Платформы на основе rpm:
dnf install git curl zip unzip pkgconfig
- платформы на основе pacman:
base-devel git curl zip unzip tar cmake ninja
- Платформы на основе apt:
Для пользователей Linux и macOS также рекомендуется установить следующие пакеты: autoconf
, , autoconf-archive
automake
make
и libtool
. Хотя эти пакеты не требуются, эти пакеты часто используются библиотеками, доступными в vcpkg.
Поддержка разбивается на 4 отдельные категории. В их число входят:
- Полная поддержка, протестированная
Конфигурации, используемые для тестирования курированного реестра vcpkg на регулярной основе. Проблемы в этих конфигурациях быстро обнаруживаются и устраняются средствами поддержки vcpkg и сообществом. - Полная поддержка, ожидаемое
Конфигурации, обрабатываемые с тем же приоритетом, что и "Полная поддержка, протестированные", но которые не являются частью регулярных тестов. Как правило, эти конфигурации существенно похожи на одну из полностью протестированных конфигураций. - Поддержка сообщества
Конфигурации, которые не поддерживаются обслуживающими клиентами vcpkg, но имеют существенные инвестиции в сообщество. Поддержка vcpkg принимает изменения для устранения проблем на этих платформах, но не гарантирует, что эти конфигурации работают. Команда vcpkg заинтересована в перемещении как можно больше платформ из поддержки сообщества в полную поддержку. - Не поддерживается
Конфигурации, которые не работают по какой-то причине. Как правило, PR, исправляющие только эти платформы, не принимаются.
Полностью поддерживаемые тестируемые платформы:
- Последний выпуск Windows или Windows Server. Это Windows 11 и Windows Server 2022 на момент написания этой статьи.
- Последнее обновление Visual Studio, Visual Studio 2022 версии 17.11 по состоянию на эту запись.
macOS предназначен для отслеживания последней версии macOS и современной версии средств командной строки Xcode. Однако обновление компьютеров macOS является ручным процессом, и macOS часто изменяет вещи таким образом, чтобы нарушить тестирование vcpkg. По состоянию на этот текст мы используем:
- macOS 14.5
- Средства командной строки XCode 15.3
- Последний выпуск LTS Ubuntu, в настоящее время 22.04.
- Linux 64-разрядная версия Android NDK версии r26d
- Windows 8.1 / Windows Server 2016 и более поздних версий
- Visual Studio 2015 и более поздней версии
- Последняя версия macOS, минус 2 основных версий. Например, текущая версия macOS — macOS 15 Sequoia, поэтому мы ожидаем, что vcpkg будет работать до macOS 13 Ventura. Это предназначено для отслеживания собственной поддержки Apple для macOS.
- Современные версии средств командной строки Xcode для данного выпуска macOS.
Мы намерены поддерживать сборки AMD64 на основе glibc linuxes по-прежнему в поддержке от своего поставщика дистрибутивов, выпущенного за последние 5 лет. Примеры:
- Ubuntu 24.04, 22.04 и 20.04 поддерживаются каноническим и выпущены за последние 5 лет, поэтому они, как ожидается, будут работать. Ubuntu 18.04 по-прежнему поддерживается каноническим, но был выпущен более 5 лет назад, поэтому мы больше не считаем его полностью поддерживаемым. 20.10 больше 20.04, но мы не считаем его полностью поддерживаемым, так как он больше не поддерживается от Канонического.
- Red Hat Enterprise Linux 9 полностью поддерживается.
- CentOS и Red Hat Enterprise Linux 8 покинули поддержку Red Hat 31 мая 2024 года и выпустили более 5 лет назад и, таким образом, не поддерживается.
- CentOS и RHEL 7 не поддерживают Red Hat, и не должны работать, как они были выпущены более 5 лет назад. Oracle Linux fork теперь поддерживает Oracle по-прежнему в поддержке Oracle, но по-прежнему не ожидается работать, как он был выпущен более 5 лет назад.
- Fedora 40 и 39 полностью поддерживаются, но 38 больше не поддерживаются Fedora.
- Debian 12 "Bookworm", и 11 "Bullseye" все поддерживаются Debian и выпущены за последние 5 лет. Debian 10 "Buster" оставил поддержку проекта Debian в июле 2024 года и, таким образом, не поддерживается vcpkg.
Мы также предполагаем, что системы сборки пользователей будут соответствовать версии Linux, которую они используют, и заботиться о том, чтобы компоненты, такие как наша интеграция с режимом манифеста CMake, будут работать с версиями этих зависимостей, которые приходят с одним из указанных выше дистрибутивов. По состоянию на эту запись эти версии зависимостей и связанные дистрибутивы:
- GCC 9.4.0 (Ubuntu 20.04)
- CMake 3.16.3 (Ubuntu 20.04)
- Ninja 1.10.0 (все)
- Curl 7.68 (Ubuntu 20.04)
- zip 3.0 (все)
- распакуть 6.0 (все)
- Windows 7 / Windows Server 2008 R2 и более поздних версий
vcpkg.exe
должны работать в версиях Windows 7, но подавляющее большинство курированного реестра требует компонентов MSYS2, таких как pkg-config
, которые больше не поддерживают версии Windows старше 8.1.
- MinGW или Clang в качестве компилятора сборки.
В настоящее время vcpkg имеет ряд предположений Visual Studio; В частности, наши функции, которые копируют соответствующие PDOB-файлы для исполняемых файлов, в настоящее время требуют дампа, компонента Visual Studio. У нас есть несколько выделенных членов сообщества, которые заботятся о поддержке MinGW, хотя и включают в себя цепочку инструментов MinGW в поле.
- Linux, отличный от AMD64. Мы очень заинтересованы в помощи от людей, предназначенных для Arm64 Linux, если это можно показать, как доставлять двоичные файлы, которые имеют высокую вероятность успешного выполнения на всех оборудовании linux arm64.
- Linux, отличный от glibc. Несколько инструментов vcpkg обычно предоставляются в двоичных формах, которые ожидают, что системный libc будет glibc. Мы предоставляем двоичный файл на основе муслки vcpkg, который мы проверили для работы на Alpine, но не в состоянии предоставить муслк на основе копий ряда зависимостей, таких как CMake.
В целевых объектах BSD двоичный файл vcpkg не предоставляется для скачивания. Вместо этого логика начальной загрузки скачит исходный код vcpkg и скомпилирует его локально.
для vcpkg требуется ряд программных пакетов, которые не входят в операционную систему и должны быть установлены с помощью диспетчера пакетов:
- 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
Как и в Linux, также рекомендуется установить некоторые дополнительные пакеты:
- FreeBSD:
pkg install -y autoconf autoconf-archive gmake pkgconf python
- OpenBSD:
pkg_add -Iz autoconf-2.71 autoconf-archive gmake pkgconf python3
- vcpkg выполняется
unzip
изPATH
. В конечном итоге это может привести к тому, что vcpkg будет выполнять операционную систему, предоставленнуюunzip
, несмотря на установку дополнительной версии с помощью диспетчера пакетов. ПеременнаяPATH
среды должна быть настроена, чтобы предпочестьunzip
стороннюю сторону для одной операционной системы или vcpkg не удастся извлечь двоичный кэш.
- 32-разрядная версия Windows. Нацеливание на x86-windows или arm-windows работает просто хорошо, но сам vcpkg ожидает запуска копий инструментов поддержки AMD64, таких как CMake.
- Visual Studio 2013 или более ранней версии.
- Windows Vista или более ранние версии.
- Узлы macOS или Linux старше, чем в категориях полностью поддерживаемых .
Отзыв о vcpkg
vcpkg — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: