AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Conan Vcpkg

skill-mohitmishra786-low-level-dev-skills-conan-vcpkg · by mohitmishra786

C/C++ package manager skill covering Conan and vcpkg. Use when adding third-party library dependencies to C/C++ projects, managing binary compatibility, integrating with CMake, or choosing between Conan and vcpkg. Activates on queries about Conan, vcpkg, C++ dependency management, conanfile.txt, vcpkg.json, CMake package integration, or C++ package managers.

No reviews yet
0 installs
4 views
0.0% view→install

Install

$ agentstack add skill-mohitmishra786-low-level-dev-skills-conan-vcpkg

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access Used
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-mohitmishra786-low-level-dev-skills-conan-vcpkg)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of Conan Vcpkg? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Conan and vcpkg

Purpose

Guide agents through C/C++ dependency management with Conan and vcpkg: declaring dependencies, integrating with CMake, managing binary compatibility, and choosing the right tool for a given project.

Triggers

  • "How do I add a C++ library dependency with Conan?"
  • "How do I use vcpkg with CMake?"
  • "What's the difference between Conan and vcpkg?"
  • "How do I add zlib/openssl/fmt with a package manager?"
  • "How do I create a vcpkg.json manifest?"
  • "My Conan package build is failing — how do I debug it?"

Workflow

1. Conan vs vcpkg decision

Which package manager?
├── Team uses MSVC on Windows primarily → vcpkg (better MSVC integration)
├── Need binary packages (no source builds in CI) → Conan (binary cache)
├── Need cross-compilation support → Conan (profiles) or Zig-based builds
├── Need a specific version of a package → Conan (flexible versioning)
├── Quick project setup, just need it to work → vcpkg (simpler)
└── Open-source project, broad audience → vcpkg (GitHub-integrated)

2. vcpkg setup

# Clone vcpkg
git clone https://github.com/microsoft/vcpkg.git
./vcpkg/bootstrap-vcpkg.sh    # Linux/macOS
./vcpkg/bootstrap-vcpkg.bat   # Windows

# Install packages (classic mode)
./vcpkg/vcpkg install zlib curl openssl

# Integrate with CMake
cmake -S . -B build \
    -DCMAKE_TOOLCHAIN_FILE=/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake

3. vcpkg manifest mode (recommended)

// vcpkg.json — place at project root
{
    "name": "myapp",
    "version": "1.0.0",
    "dependencies": [
        "zlib",
        "curl",
        { "name": "openssl", "version>=": "3.0.0" },
        { "name": "boost-filesystem", "platform": "!windows" },
        {
            "name": "fmt",
            "features": ["core"]
        }
    ],
    "builtin-baseline": "abc123..."
}
# CMakeLists.txt
cmake_minimum_required(VERSION 3.20)
project(myapp)

find_package(ZLIB REQUIRED)
find_package(CURL REQUIRED)
find_package(fmt REQUIRED)

add_executable(myapp src/main.cpp)
target_link_libraries(myapp PRIVATE ZLIB::ZLIB CURL::libcurl fmt::fmt)
# Build — vcpkg automatically installs dependencies
cmake -S . -B build \
    -DCMAKE_TOOLCHAIN_FILE=/path/to/vcpkg/scripts/buildsystems/vcpkg.cmake
cmake --build build

4. Conan setup

# Install Conan
pip install conan

# Set up default profile (detects compiler, OS)
conan profile detect

# Check your profile
conan profile show

5. Conan with CMake (Conan 2.x)

# conanfile.txt
[requires]
zlib/1.3
fmt/10.2.1
openssl/3.2.0

[generators]
CMakeDeps
CMakeToolchain

[options]
openssl/*:shared=False
# Install dependencies
conan install . --output-folder=build --build=missing

# Configure and build
cmake -S . -B build \
    -DCMAKE_TOOLCHAIN_FILE=build/conan_toolchain.cmake \
    -DCMAKE_BUILD_TYPE=Release
cmake --build build
# CMakeLists.txt
find_package(ZLIB REQUIRED)
find_package(fmt REQUIRED)
find_package(OpenSSL REQUIRED)

add_executable(myapp src/main.cpp)
target_link_libraries(myapp PRIVATE
    ZLIB::ZLIB
    fmt::fmt
    OpenSSL::SSL OpenSSL::Crypto
)

6. Conan profiles for cross-compilation

# ~/.conan2/profiles/linux-arm64
[settings]
os=Linux
arch=armv8
compiler=gcc
compiler.version=12
compiler.libcxx=libstdc++11
build_type=Release

[buildenv]
CC=aarch64-linux-gnu-gcc
CXX=aarch64-linux-gnu-g++

[tool_requires]
# Tools that run on build machine (x86)
# Cross-compile
conan install . \
    --profile:build=default \
    --profile:host=linux-arm64 \
    --output-folder=build-arm \
    --build=missing

7. conanfile.py (advanced)

# conanfile.py
from conan import ConanFile
from conan.tools.cmake import CMakeToolchain, CMakeDeps, CMake

class MyAppConan(ConanFile):
    name = "myapp"
    version = "1.0"
    settings = "os", "compiler", "build_type", "arch"

    def requirements(self):
        self.requires("zlib/1.3")
        self.requires("fmt/10.2.1")
        if self.settings.os == "Linux":
            self.requires("openssl/3.2.0")

    def generate(self):
        tc = CMakeToolchain(self)
        tc.generate()
        deps = CMakeDeps(self)
        deps.generate()

    def build(self):
        cmake = CMake(self)
        cmake.configure()
        cmake.build()

8. Common dependency lookup

| Library | vcpkg name | Conan name | |---------|-----------|-----------| | zlib | zlib | zlib/1.3 | | OpenSSL | openssl | openssl/3.2.0 | | libcurl | curl | libcurl/8.4.0 | | {fmt} | fmt | fmt/10.2.1 | | spdlog | spdlog | spdlog/1.12.0 | | Boost | boost | boost/1.83.0 | | nlohmann-json | nlohmann-json | nlohmann_json/3.11.3 | | googletest | gtest | gtest/1.14.0 | | Google Benchmark | benchmark | benchmark/1.8.3 | | SQLite | sqlite3 | sqlite3/3.44.0 | | protobuf | protobuf | protobuf/4.25.1 |

For vcpkg baseline pinning and Conan binary cache setup, see [references/package-manager-patterns.md](references/package-manager-patterns.md).

Related skills

  • Use skills/build-systems/cmake for CMake integration with both Conan and vcpkg
  • Use skills/compilers/cross-gcc for cross-compilation with Conan profiles
  • Use skills/build-systems/ninja as the backend for package-managed projects

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.