An open API service indexing awesome lists of open source software.

https://github.com/artempyanykh/vcpkg-cmake-example

Example repo demonstrating a C++ project setup with CMake and vcpkg
https://github.com/artempyanykh/vcpkg-cmake-example

cmake cpp dependencies vcpkg

Last synced: 4 months ago
JSON representation

Example repo demonstrating a C++ project setup with CMake and vcpkg

Awesome Lists containing this project

README

          

# C++ with cmake and vcpkg

An example project that demonstrates a setup using CMake + vcpkg for a
reasonable build with reasonable dependency management:
1. `CMakeLists.txt` contains a project definition and `vcpkg` integration bits.
2. `vcpkg.json` is a manifest file that defines a list of project dependencies.
3. `vcpkg` itself is checked-out as a submodule, so don' forget to run:
1. `git submodule update --init`.
2. `vcpkg/bootstrap-vcpkg.sh`.

* How to setup the build: `cmake -S . -B build [-G Ninja]`
* How to build the binary: `cmake --build build`
* How to run the built binary: run `build/main`

The top-level `Makefile` defines a number of phony targets that act as shortcuts for specific cmake invocations:
* `bootstrap` sets up `vcpkg`.
* `configure/reconfigure` prepare cmake build.
* `build/run` to compile and run the binary.
* `clean`.