Boost
Libraries
arrow_drop_down
Boost.Graph
M
D
C++ 03 Added in Boost 1.18.0
Categories: Containers , Algorithms , Iterators

The BGL graph interface and graph components are generic, in the same sense as the the Standard Template Library (STL).

This Release

Denis Davydov
Denis Davydov
Contributor - New

Dependencies

Algorithm
Any
Array
Assert
Bimap
Bind
Concept Check
Config
Container Hash
Conversion
Core
Detail
Foreach
Function
GraphParallel
Integer
Iterator
Lexical Cast
Math
Move
MPL
Multi-Index
Optional
Parameter
Preprocessor
Property Map
Property Tree
Random
Range
Regex
Serialization
Smart Ptr
Spirit
Static Assert
Test
ThrowException
TTI
Tuple
Type Traits
Typeof
Unordered
Utility
Xpressive

Added

Container Hash

Removed

Functional

Boost Graph Library

A generic interface for traversing graphs, using C++ templates.

The full documentation is available on boost.org.

Support, bugs and feature requests

Bugs and feature requests can be reported through the Trac issue tracker (see open issues and closed issues). Here is why Trac is still in use.

You can submit your changes through a pull request. One of the maintainers will take a look (remember that it can take some time).

There is no mailing-list specific to Boost Graph, although you can use the general-purpose Boost mailing-list using the tag [graph].

Development

Clone the whole boost project, which includes the individual Boost projects as submodules (see boost+git doc):

git clone https://github.com/boostorg/boost
cd boost
git submodule update --init

The Boost Graph Library is located in libs/graph/.

Boost Graph Library is mostly made of headers but also contains some compiled components. Here are the build commands:

./bootstrap.sh            <- compile b2 
./b2 headers              <- just installs headers
./b2                      <- build compiled components

Note: The Boost Graph Library cannot currently be built outside of Boost itself.

Running tests

First, make sure you are in libs/graph/test. You can either run all the 300+ tests listed in Jamfile.v2 or run a single test:

../../../b2                        <- run all tests
../../../b2 cycle_canceling_test   <- single test

You can also check the regression tests reports.

All Time

Jeremy Siek
Jeremy Siek
Contributor
Jeremiah Willcock
Jeremiah Willcock
Contributor
Douglas Gregor
Douglas Gregor
Contributor
Andrew Sutton
Andrew Sutton
Contributor
Vladimir Prus
Vladimir Prus
Contributor
Beman Dawes
Beman Dawes
Contributor
Aaron Windsor
Aaron Windsor
Contributor
Dave Abrahams
Dave Abrahams
Contributor
K. Noel Belcourt
K. Noel Belcourt
Contributor
Ronald Garcia
Ronald Garcia
Contributor
nobody
Contributor
Daniel James
Daniel James
Contributor
Jürgen Hunold
Jürgen Hunold
Contributor
Lie-Quan Lee
Contributor
Rene Rivera
Rene Rivera
Contributor
Murray Cumming
Murray Cumming
Contributor
Marshall Clow
Marshall Clow
Contributor
jzmaddock
jzmaddock
Contributor
Eric Niebler
Contributor
Stephen Kelly
Stephen Kelly
Contributor
Gennaro Prota
Contributor
Darin Adler
Contributor
Nicholas Edmonds
Nicholas Edmonds
Contributor
Stefan Slapeta
Contributor
BenPope
BenPope
Contributor
Eisuke Kawashima
Eisuke Kawashima
Contributor
Mads Jensen
Mads Jensen
Contributor
Jonathan Turkanis
Jonathan Turkanis
Contributor
Guillaume Melquiond
Guillaume Melquiond
Contributor
Alexander Lauser
Alexander Lauser
Contributor
Josef Cibulka
Contributor
Jakob Lykke Andersen
Jakob Lykke Andersen
Contributor
Troy D. Straszheim
Troy D. Straszheim
Contributor
Michael A. Jackson
Michael A. Jackson
Contributor
Steven Watanabe
Steven Watanabe
Contributor
Björn Karlsson
Contributor
Arvin Schnell
Arvin Schnell
Contributor
Maël Valais
Maël Valais
Contributor
Akira Takahashi
Akira Takahashi
Contributor
Victor A. Wagner Jr.
Contributor
Aleksey Gurtovoy
Contributor
Caleb Epstein
Contributor
Andreas Huber
Contributor
Ciro Santilli
Ciro Santilli
Contributor
marcinz
marcinz
Contributor
Justin Viiret
Justin Viiret
Contributor
coderakki
coderakki
Contributor
sehe
sehe
Contributor
felix
felix
Contributor
Arne B
Contributor
Daniel J. H
Daniel J. H
Contributor
Ola Nilsson
Ola Nilsson
Contributor
Jakob Lykke Andersen
Jakob Lykke Andersen
Contributor
Lorenz Breidenbach
Lorenz Breidenbach
Contributor
Jürgen Hunold
Contributor
akumta
akumta
Contributor
Jens Maurer
Jens Maurer
Contributor
Marcel Raad
Marcel Raad
Contributor
Alisdair Meredith
Alisdair Meredith
Contributor
Noel Belcourt
Noel Belcourt
Contributor
Jurko Gospodnetić
Jurko Gospodnetić
Contributor
Joaquín M. López Muñoz
Joaquín M. López Muñoz
Contributor
Vladimir Prus
Vladimir Prus
Contributor
Thomas Witt
Thomas Witt
Contributor
Louis Dionne
Louis Dionne
Contributor
Bryce Adelstein-Lelbach
Bryce Adelstein-Lelbach
Contributor
Kolya Matteo
Kolya Matteo
Contributor
Neil Groves
Contributor
Jared Grubb
Jared Grubb
Contributor
Ahmed Charles
Ahmed Charles
Contributor
Roland Schwarz
Roland Schwarz
Contributor
Stephan Diederich
Stephan Diederich
Contributor
mikael
mikael
Contributor
Joel de Guzman
Joel de Guzman
Contributor
Matt Barr
Contributor