Hosts admitidos
En este documento se describen las arquitecturas y los sistemas operativos compatibles con vcpkg.
Dependencias
vcpkg también depende de algunos componentes del sistema que se van a instalar antes de poder ejecutarse.
Para usar vcpkg, primero es necesario instalar algunos componentes en el sistema.
- Windows: Visual Studio 2015 o posterior.
- macOS: Herramientas de línea de comandos de Xcode, tar, git, zip, descomprimir y curl. La mayoría de los puertos también necesitan
pkg-config
. Se recomienda instalar estas dependencias a través de Homebrew, como a través de un comandobrew install zip unzip curl pkgconfig
de terminal . - Linux: un compilador de C++ para usar, tar, git, zip, descomprimir y curl. La mayoría de los puertos también necesitan
pkg-config
. Se recomienda instalar estas dependencias con el administrador de paquetes del sistema.- plataformas basadas en apt:
apt install git curl zip unzip pkgconfig
- Plataformas basadas en rpm:
dnf install git curl zip unzip pkgconfig
- Plataformas basadas en pacman:
base-devel git curl zip unzip tar cmake ninja
- plataformas basadas en apt:
Para los usuarios de Linux y macOS también se recomienda instalar los siguientes paquetes: autoconf
, autoconf-archive
, make
automake
y libtool
. Aunque no es necesario, las bibliotecas disponibles en vcpkg usan estos paquetes a menudo.
Niveles de compatibilidad con el registro mantenido
El soporte técnico se divide en 4 categorías distintas. Son las siguientes:
- Compatibilidad completa, probada
Las configuraciones usadas para probar el registro mantenido de vcpkg de forma periódica. Los problemas en estas configuraciones se encuentran rápidamente y se corrigen mediante los mantenedores y la comunidad de vcpkg. - Compatibilidad completa, esperada
Las configuraciones se tratan con la misma prioridad que "Compatibilidad completa, probada", pero que no forman parte de las pruebas normales. En general, estas configuraciones son sustancialmente similares a una de las configuraciones totalmente probadas. - Soporte técnico de la comunidad
Las configuraciones que no son compatibles activamente con los mantenedores de vcpkg, pero tienen una inversión comunitaria considerable. Los mantenedores de vcpkg aceptan cambios para corregir problemas para estas plataformas, pero no garantizan que estas configuraciones funcionen. El equipo de vcpkg está interesado en mover tantas plataformas de soporte técnico de la comunidad como sea posible. - No admitidas
Configuraciones que no se sabe que funcionan por alguna razón. En general, las solicitudes de incorporación de cambios que corrigen solo estas plataformas no se aceptan.
Compatibilidad completa, probada
Las plataformas totalmente compatibles y probadas son:
Windows
- La versión más reciente de Windows o Windows Server. Estas son Windows 11 y Windows Server 2022 a partir de esta escritura.
- La actualización más reciente de Visual Studio, Visual Studio 2022, versión 17.11, a partir de esta escritura.
macOS
macOS está diseñado para realizar un seguimiento de la versión más reciente de macOS y la versión contemporánea de las herramientas de línea de comandos de Xcode. Sin embargo, la actualización de máquinas macOS es un proceso manual y macOS cambia con frecuencia cosas de maneras que interrumpen las pruebas de vcpkg. A partir de este escrito, estamos usando:
- macOS 14.5
- Herramientas de línea de comandos de XCode 15.3
Linux
- La versión más reciente de LTS de Ubuntu, actualmente 22.04.
Android
- Linux 64 bits Android NDK versión r26d
Compatibilidad completa, esperada
Windows
- Windows 8.1/ Windows Server 2016 y versiones posteriores
- Visual Studio 2015 y versiones posteriores
macOS
- La versión más reciente de macOS, menos 2 versiones principales. Por ejemplo, la versión actual de macOS es macOS 15 Sequoia, por lo que esperamos que vcpkg funcione tan lejos como macOS 13 Ventura. Esto está pensado para realizar un seguimiento con la compatibilidad propia de Apple con macOS.
- Versiones contemporáneas de las herramientas de línea de comandos de Xcode para una versión determinada de macOS.
Linux
Tenemos previsto admitir compilaciones AMD64 de Linux basados en glibc que todavía están en soporte técnico de su proveedor de distribución publicado en los últimos 5 años. Ejemplos:
- Ubuntu 24.04, 22.04 y 20.04 están en soporte técnico de Canonical y publicados en los últimos 5 años, por lo que se espera que funcionen. Ubuntu 18.04 sigue siendo compatible con Canonical, pero se lanzó hace más de 5 años, por lo que ya no lo consideramos totalmente compatible. La versión 20.10 es posterior a la 20.04, pero no se considera totalmente compatible porque ya no está compatible con Canonical.
- Red Hat Enterprise Linux 9 es totalmente compatible.
- CentOS y Red Hat Enterprise Linux 8 abandonaron el soporte técnico de Red Hat el 31 de mayo de 2024 y se publicaron hace más de 5 años y, por tanto, ya no se admiten.
- CentOS y RHEL 7 no son compatibles con Red Hat y no se espera que funcionen como se publicaron hace más de 5 años. La bifurcación de Oracle Linux ahora compatible con Oracle sigue siendo compatible con Oracle, pero todavía no se espera que funcione como se publicó hace más de 5 años.
- Fedora 40 y 39 son totalmente compatibles, pero 38 ya no es compatible con Fedora.
- Debian 12 "Bookworm" y 11 "Bullseye" son todos compatibles con Debian y lanzados en los últimos 5 años. Debian 10 "Buster" dejó el soporte técnico del proyecto de Debian en julio de 2024 y, por tanto, no es compatible con vcpkg.
También suponemos que los sistemas de compilación de los usuarios coincidirán con la versión de Linux que usan y que se encargan de asegurarse de que los componentes como la integración de CMake del modo de manifiesto funcionarán con las versiones de estas dependencias que vienen con una de las distribuciones anteriores. A partir de este artículo, esas versiones de dependencia y las distribuciones asociadas son:
- GCC 9.4.0 (Ubuntu 20.04)
- CMake 3.16.3 (Ubuntu 20.04)
- Ninja 1.10.0 (Todos)
- Curl 7.68 (Ubuntu 20.04)
- zip 3.0 (todos)
- descomprimir 6.0 (todos)
Soporte técnico de la comunidad
Windows
- Windows 7/ Windows Server 2008 R2 y versiones posteriores
vcpkg.exe
debe funcionar en los tipos de Windows 7, pero la gran mayoría del registro mantenido requiere componentes MSYS2 como pkg-config
los que ya no admiten versiones de Windows anteriores a la 8.1.
- MinGW o Clang como compilador de compilación.
Actualmente vcpkg tiene una serie de suposiciones de Visual Studio; en concreto, nuestras características que copian archivos PDF coincidentes para los ejecutables actualmente requieren dumpbin, un componente de Visual Studio. Tenemos una serie de miembros de la comunidad dedicados que se preocupan por el soporte técnico de MinGW, y sí incluyen cadenas de herramientas MinGW en la caja.
Linux
- Linux que no es AMD64. Estamos muy interesados en la ayuda de usuarios que tienen como destino arm64 Linux si se puede mostrar cómo entregar archivos binarios que tienen una alta probabilidad de éxito en ejecución en todo el hardware linux arm64.
- Linux que no es glibc. Varias herramientas vcpkg normalmente proporcionan para que se distribuyan en formularios binarios que esperan que el libc del sistema sea glibc. Proporcionamos un binario basado en muslc de vcpkg que hemos probado para trabajar en Alpine, pero no podemos proporcionar copias basadas en muslc de una serie de dependencias como CMake.
BSD u otros sistemas POSIX
En los destinos de BSD, no se proporciona ningún archivo binario vcpkg para su descarga. En su lugar, la lógica de arranque descargará el código fuente de vcpkg y lo compilará localmente.
Dependencias
vcpkg requiere una serie de paquetes de software que no forman parte del sistema operativo y deben instalarse mediante el administrador de paquetes:
- 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
Como en Linux, también se recomienda instalar algunos paquetes adicionales:
- FreeBSD:
pkg install -y autoconf autoconf-archive gmake pkgconf python
- OpenBSD:
pkg_add -Iz autoconf-2.71 autoconf-archive gmake pkgconf python3
Advertencias
- vcpkg se
unzip
ejecuta desdePATH
. Finalmente, esto podría hacer que vcpkg ejecute el sistema operativo proporcionadounzip
a pesar de que se ha instalado otro con el administrador de paquetes. LaPATH
variable de entorno debe configurarse para preferir a terceros sobre launzip
del sistema operativo, o vcpkg no podrá extraer su caché binaria.
No admitidas
- Windows de 32 bits. El destino de x86 windows o arm-windows funciona bien, pero vcpkg espera ejecutar copias AMD64 de herramientas de soporte como CMake.
- Visual Studio 2013 o versiones anteriores.
- Windows Vista o versiones anteriores.
- Los hosts de macOS o Linux anteriores a los de las categorías totalmente compatibles .