Boost logo

Boost :

From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2020-01-11 16:19:46

On 2020-01-10 17:02, anshu khare via Boost wrote:
> Hello mentors,
> I would like to contribute to the core library of BOOST. I am working on
> windows. I cloned boostorg/core library. After cloning I found that there
> are many folders.

Using Boost.Core alone is not possible. You have to at least also clone
the dependencies. More realistically, you should clone Boost
superproject[1] and all its submodules, which will include Boost.Core
and its dependencies.

   git clone boost
   cd boost
   git submodule update --init --recursive

After that you need to bootstrap Boost.Build as described in the Getting
Started page[2] and create links to library headers by invoking `b2
headers` in your Boost root directory. After that you will be able to
build Boost libraries and run tests. Building libraries is described in
Getting Started, to run tests you can just invoke `b2` (possibly with
arguments) in the libs/<library>/test directory.

> Could you please tell which folder should I look up?

In the Boost tree, you'll be working in libs/<library> folder. Each
library has a set of common subfolders, such as:

   meta - library description
   include/boost - public headers
   src - buildable sources and private headers
   build - Boost.Build scripts for building the library, if there are
buildable sources
   example - library usage examples
   doc - library documentation
   test - library tests, including Boost.Build script for testing

So, for Boost.Core you'd be writing headers in
libs/core/include/boost/core, writing and running tests in
libs/core/test, etc. When you create new headers you'll have to invoke
`b2 headers` in the Boost root again to create links to the new headers.


Boost list run by bdawes at, gregod at, cpdaniel at, john at