Guide pour le Build¶
Pour être capable de compiler pgRouting, vérifiez que les dépendances suivantes sont présentes :
- Compilateurs C et C++
- Version Postgresql >= 8.4 (>= 9.1 recommandée)
- Version PostGIS >= 1.5 (>= 2.0 recommandée)
- La Boost Graph Library (BGL). Version >= [à déterminer]
- CMake >= 2.8.8
- (optionnel, pour Driving Distance) CGAL >= [à déterminer]
- (optionnel, pour la Documentation) Sphinx >= 1.1
- (optional, for Documentation as PDF) Latex >= [TBD]
The cmake system has variables the can be configured via the command line options by setting them with -D<varable>=<value>. You can get a listing of these via:
mkdir build
cd build
cmake -L ..
Currently these are:
Boost_DIR:PATH=Boost_DIR-NOTFOUND CMAKE_BUILD_TYPE:STRING= CMAKE_INSTALL_PREFIX:PATH=/usr/local POSTGRESQL_EXECUTABLE:FILEPATH=/usr/lib/postgresql/9.2/bin/postgres POSTGRESQL_PG_CONFIG:FILEPATH=/usr/bin/pg_config WITH_DD:BOOL=ON WITH_DOC:BOOL=OFF BUILD_HTML:BOOL=ON BUILD_LATEX:BOOL=OFF BUILD_MAN:BOOL=ON
These also show the current or default values based on our development system. So your values my be different. In general the ones that are of most interest are:
WITH_DD:BOOL=ON – Turn on/off building driving distance code. WITH_DOC:BOOL=OFF – Turn on/off building the documentation BUILD_HTML:BOOL=ON – If WITH_DOC=ON, turn on/off building HTML BUILD_LATEX:BOOL=OFF – If WITH_DOC=ON, turn on/off building PDF BUILD_MAN:BOOL=ON – If WITH_DOC=ON, turn on/off building MAN pages
To change any of these add -D<variable>=<value> to the cmake lines below. For example to turn on documentation, your cmake command might look like:
cmake -DWITH_DOC=ON .. # Turn on the doc with default settings
cmake -DWITH_DOC=ON -DBUILD_LATEX .. # Turn on doc and pdf
If you turn on the documentation, you also need to add the doc target to the make command.
make # build the code but not the doc
make doc # build only the doc
make all doc # build both the code and the doc
Pour MinGW sur Windows¶
mkdir build
cd build
cmake -G"MSYS Makefiles" ..
make
make install
Pour Linux¶
mkdir build
cd build
cmake ..
make
sudo make install