Installation of pgRouting¶
Important
The content of this page is outdated and is for archiving purposes only.
Installation on Ubuntu 8.04 (with PostgreSQL 8.3) with TSP and Driving Distance (Extras)
To build pgRouting the following libraries are required:
- pgRouting source code (http://pgrouting.postlbs.org)
- C and C++ compilers
- PostgreSQL version >= 8.0
- PostGIS version >= 1.0
- The Boost Graph Library (BGL). Version >= 1.33 which contains the astar.hpp (http://www.boost.org/libs/graph/doc/index.html)
- For TSP (optional): The Genetic Algorithm Utility Library (GAUL) (http://gaul.sourceforge.net)
- For Driving Distance (optional): Computational Geometry Algorithms Library (CGAL) version >= 3.2 (http://www.cgal.org)
The workshop will use a virtual machine image running Xubuntu 8.04 with preinstalled pgRouting. You can download the virtual machine image from http://download.osgeo.org/pgrouting/foss4g2008/
For installation instructions on other platforms take a look at the pgRouting documentation pages on http://www.pgrouting.org
pgRouting on the workshops virtual machine image has been installed like this:
Install required packages¶
sudo apt-get install build-essential subversion cmake
sudo apt-get install libboost-graph*
sudo apt-get install postgresql-8.3-postgis postgresql-server-dev-8.3
For Driving Distance algorithm (optional) CGAL library can be easily installed using the Ubuntu multiverse repository.
sudo apt-get install libcgal*
For TSP algorithm (optional)
wget http://downloads.sourceforge.net/gaul/gaul-devel-0.1849-0.tar.gz?modtime=1114163427&big_mirror=0
tar -xzf gaul-devel-0.1849-0.tar.gz
cd gaul-devel-0.1849-0/
./configure --disable-slang
make
sudo make install
Compile pgRouting core (with TSP and DD flag on)¶
svn checkout http://pgrouting.postlbs.org/svn/pgrouting/trunk pgrouting
cd pgrouting/
cmake -DWITH_TSP=ON -DWITH_DD=ON .
make
sudo make install
Setup PostgreSQL¶
Set local database connections to “trust” in “pg_hba.conf” to be able to work with PostgreSQL as user “postgres”. Then restart PostgreSQL.
sudo gedit /etc/postgresql/8.3/main/pg_hba.conf
sudo /etc/init.d/postgresql-8.3 restart
Create routing database¶
To test your installation create a first routing database and load the routing functions into this database.
createdb -U postgres routing
createlang -U postgres plpgsql routing
Add PostGIS functions
psql -U postgres -f /usr/share/postgresql-8.3-postgis/lwpostgis.sql routing
psql -U postgres -f /usr/share/postgresql-8.3-postgis/spatial_ref_sys.sql routing
Add pgRouting functions
psql -U postgres -f /usr/share/postlbs/routing_core.sql routing
psql -U postgres -f /usr/share/postlbs/routing_core_wrappers.sql routing
psql -U postgres -f /usr/share/postlbs/routing_topology.sql routing
Add TSP functions (optional)
psql -U postgres -f /usr/share/postlbs/routing_tsp.sql routing
psql -U postgres -f /usr/share/postlbs/routing_tsp_wrappers.sql routing
Add Driving Distance functions (optional)
psql -U postgres -f /usr/share/postlbs/routing_dd.sql routing
psql -U postgres -f /usr/share/postlbs/routing_dd_wrappers.sql routing
Now we can proceed to the next step to load the network data.