Repository contains pgRouting library. Development branch is "develop", stable branch is "master"
PLpgSQL C++ C Standard ML Perl Shell Other
Clone or download
Latest commit ed6432f May 19, 2018

pgRouting - Routing on PostgreSQL

Join the chat at



  • The master branch has the release 2.5.2
  • The release/2.5 branch has the next micro-release 2.5.3 (if needed)
  • The develop branch has the development of the next minor-release 2.6.0-dev

For the complete list of releases go to:


Branch Travis Appveyor Jenkins Comments
master Build Status Appveyor Status Jenkins Status
develop Build Status Appveyor Status Jenkins Status
gh-pages Build Status not enabled
  • travis: Postgis 2.3.3 for Postgres 9.5 & 9.6

    • precise
    • developed with Postgres 9.3 and Postgis 2.3.3
  • jenkins: g++ 4.8 on 32 & 64 bits for Postgis 2.4.0dev and Postgres 9.5, 9.6, 10

  • appveyor: vs1013 Postgis 2.3.3 on Postgres 9.4


pgRouting extends the PostGIS/PostgreSQL geospatial database to provide geospatial routing and other network analysis functionality.

This library contains following features:

  • All Pairs Shortest Path, Johnson’s Algorithm
  • All Pairs Shortest Path, Floyd-Warshall Algorithm
  • Shortest Path A*
  • Bi-directional Dijkstra Shortest Path
  • Bi-directional A* Shortest Path
  • Shortest Path Dijkstra Family of functions
  • Shortest Path Dijkstra Cost Family of functions
  • Driving Distance
  • K-Shortest Path, Multiple Alternative Paths (Yen's algorithm)
  • Traveling Sales Person (TSP)
  • Turn Restriction Shortest Path (TRSP)

Additionally, ready for testing and to be part of 2.5 official version:

  • Shortest Path Dijkstra With Points Family of functions
  • Shortest Path Dijkstra Cost With Points Family of functions
  • Driving Distance With Points
  • K-Shortest Path With Points, Multiple Alternative Paths (Yen's algorithm)
  • Dijkstra Via (Vertices)

and many more.

Family of functions include:

  • one to one
  • one to many
  • many to one
  • many to many


Building reqirements

  • Perl
  • C and C++ compilers
    • GNU >= 4.6
    • MSVC >= 18.0
  • Postgresql >= 9.2
  • The Boost Graph Library (BGL) >= 1.53
  • CMake >= 3.2
  • CGAL >= 4.4
  • Sphinx >= 1.2

User's reqirements

  • PostGIS >= 2.0


See online documentation:


For MinGW on Windows

mkdir build
cd build
cmake -G"MSYS Makefiles" ..
make install

Also pre-built Windows binaries can be downloaded from

For Linux

mkdir build
cd build
cmake  ..
sudo make install

Build with documentation (requires Sphinx)

cmake -DWITH_DOC=ON ..

Postgresql 9.2+

createdb mydatabase
psql mydatabase -c "CREATE EXTENSION postgis"
psql mydatabase -c "CREATE EXTENSION pgrouting"


See online documentation:


  • Most features are available under GPLv2.
  • Some Boost extensions are available under Boost license (see LICENSE_1_0.txt)
  • Some code contributed by is available under MIT-X license.