awesome-repositories.com
Blog
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectAboutHow we rankPressMCP server
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
microsoft avatar

microsoft/vcpkg

0
View on GitHub↗
27,179 stars·7,579 forks·CMake·MIT·11 views

Vcpkg

This project is a cross-platform package manager designed to automate the acquisition, compilation, and integration of third-party software libraries into native development projects. It functions as a manifest-driven dependency manager, utilizing declarative configuration files to define project requirements and resolve them into consistent, versioned dependency graphs across Windows, Linux, and macOS.

The system distinguishes itself through port-based build automation, which uses standardized scripts to fetch, patch, and compile source code, and triplets-based configuration files that encapsulate target-specific parameters like architecture and compiler settings. To ensure build reproducibility, the tool locks dependency versions and configurations, allowing projects to compile identically across different machines.

Beyond core management, the system provides infrastructure for binary artifact caching, which stores compiled outputs to accelerate build times and support development in restricted or offline network environments. It also offers toolchain-aware integration to inject dependency paths and compiler flags into standard build systems, as well as support for custom library distribution and registry extensions via local overlays.

Features

  • Module Management - A cross-platform tool that automates the acquisition, compilation, and integration of third-party software libraries into native development projects.
  • Dependency Managers - Manage project dependencies through manifest files or command-line tools to ensure consistent builds across different platforms and integration with standard build systems.
  • Cross-Platform Package Managers - Standardizes how software libraries are fetched, built, and linked across Windows, Linux, and macOS development environments.
  • Build Automation Systems - Standardizes build scripts to fetch, patch, and compile source code into installable packages for various operating systems.
  • Manifest-Driven Dependency Managers - A configuration-based system that tracks project requirements through versioned files to ensure reproducible builds across different operating systems.
  • Build Reproducibility Tools - Ensures complex software projects compile identically on different machines by locking dependency versions and build configurations.
  • Build Systems - Library manager for cross-platform dependency installation.
  • Package Management - Tool for acquiring and building open-source C++ libraries.
  • Cross-Platform Build Configurations - Encapsulates target-specific build parameters into reusable configuration files to ensure consistent cross-platform compilation.
  • Package Managers - Control dependency versions and publish custom packages to registries while improving build speeds by caching binary artifacts for use in restricted or offline network environments.
  • Build Caches - Stores pre-compiled library binaries to eliminate redundant build times across different development environments.
  • Build Caches - A storage mechanism that saves compiled library outputs to accelerate build times across multiple machines and isolated network environments.
  • Build Toolchain Integrations - Generates integration files that automatically inject dependency paths and compiler flags into standard build system environments.
  • Offline Build Environments - Enables software development and deployment in secure or restricted network environments by caching binary artifacts.

Star history

Star history chart for microsoft/vcpkgStar history chart for microsoft/vcpkg

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Open-source alternatives to Vcpkg

Similar open-source projects, ranked by how many features they share with Vcpkg.
  • yarnpkg/yarnyarnpkg avatar

    yarnpkg/yarn

    41,503View on GitHub↗

    Yarn is a command-line package manager for JavaScript projects that automates the installation, versioning, and configuration of external code dependencies. It functions as a deterministic build tool, utilizing a lockfile to calculate a fixed dependency graph that ensures identical package versions across development, testing, and production environments. The project distinguishes itself through a content-addressable storage system that indexes packages by hash to eliminate redundant downloads and enable instant linking. It incorporates a virtual file system mapping that presents a unified vi

    JavaScriptjavascriptnpmpackage-manager
    View on GitHub↗41,503
  • homebrew/brewHomebrew avatar

    Homebrew/brew

    48,527View on GitHub↗

    Homebrew is a command-line package management tool designed to automate the installation, configuration, and maintenance of software on local development environments. It functions as a cross-platform software distributor, enabling users to install tools from pre-compiled binary archives or source code without requiring administrative privileges. By managing complex dependency trees and versioning, it ensures that software remains consistent and compatible across different system architectures. The project distinguishes itself through a declarative approach to system configuration, allowing u

    Rubybrewhomebrewmacos
    View on GitHub↗48,527
  • xmake-io/xmakexmake-io avatar

    xmake-io/xmake

    12,058View on GitHub↗

    Xmake is a cross-platform build utility and package manager designed for C and C++ development. It functions as a unified build automation tool that uses a Lua-based domain-specific language to define project targets, manage dependencies, and orchestrate compilation across multiple operating systems and hardware architectures. The system distinguishes itself through a modular, rule-based approach to task orchestration and toolchain integration. By abstracting native build systems and compilers, it allows developers to maintain consistent project configurations while targeting diverse environm

    Luabuildbuild-toolc
    View on GitHub↗12,058
  • bazelbuild/bazelbazelbuild avatar

    bazelbuild/bazel

    25,529View on GitHub↗

    Bazel is a multi-language build automation engine designed to manage complex dependency graphs and execute compilation tasks for massive codebases. It functions as a hermetic build environment, utilizing sandboxed execution and content-addressable caching to ensure that build artifacts are reproducible and that identical tasks are never re-executed. By modeling dependencies as a directed acyclic graph, the system determines optimal execution order and identifies tasks that can run in parallel. The project distinguishes itself through its support for distributed build execution, allowing resou

    Javabazelbuildbuild-system
    View on GitHub↗25,529
See all 30 alternatives to Vcpkg→

Frequently asked questions

What does microsoft/vcpkg do?

This project is a cross-platform package manager designed to automate the acquisition, compilation, and integration of third-party software libraries into native development projects. It functions as a manifest-driven dependency manager, utilizing declarative configuration files to define project requirements and resolve them into consistent, versioned dependency graphs across Windows, Linux, and macOS.

What are the main features of microsoft/vcpkg?

The main features of microsoft/vcpkg are: Module Management, Dependency Managers, Cross-Platform Package Managers, Build Automation Systems, Manifest-Driven Dependency Managers, Build Reproducibility Tools, Build Systems, Package Management.

What are some open-source alternatives to microsoft/vcpkg?

Open-source alternatives to microsoft/vcpkg include: yarnpkg/yarn — Yarn is a command-line package manager for JavaScript projects that automates the installation, versioning, and… homebrew/brew — Homebrew is a command-line package management tool designed to automate the installation, configuration, and… xmake-io/xmake — Xmake is a cross-platform build utility and package manager designed for C and C++ development. It functions as a… bazelbuild/bazel — Bazel is a multi-language build automation engine designed to manage complex dependency graphs and execute compilation… bower/bower — Bower is a frontend package manager and client-side asset manager used to install and track third-party JavaScript and… facebook/buck — Buck is a multi-language build system and modular build orchestrator designed to compile and package software modules…