Supported versions:
Instalación¶
Tabla de Contenido
Instructions for downloading and installing binaries for different operating systems, additional notes and corrections not included in this documentation can be found in Installation wiki
Para utilizar pgRouting postGIS necesita ser instalado, por favor lea la información sobre la instalación en esta Guía de instalacoón
Versión corta¶
Extraer la bola de alquitrán
tar xvfz pgrouting-3.3.5.tar.gz
cd pgrouting-3.3.5
Para compilar suponiendo que tiene todas las dependencias en su ruta de búsqueda:
mkdir build
cd build
cmake ..
make
sudo make install
Una vez que pgRouting está instalado, debe habilitarse en cada base de datos individual en la que desee utilizarlo.
createdb routing
psql routing -c 'CREATE EXTENSION PostGIS'
psql routing -c 'CREATE EXTENSION pgRouting'
Obtener las fuentes¶
La última versión de pgRouting se puede encontrar en https://github.com/pgRouting/pgrouting/releases/latest
Wget
Para descargar esta versión:
wget -O pgrouting-3.3.5.tar.gz https://github.com/pgRouting/pgrouting/archive/v3.3.5.tar.gz
Ir a Versión corta para más instrucciones sobre la extraccion de la bola tar y la compilación de pgRouting.
git
Para descargar el repositorio
git clone git://github.com/pgRouting/pgrouting.git
cd pgrouting
git checkout v3.3.5
Go to Versión corta for more instructions on compiling pgRouting (there is no tar ball involved while downloading pgRouting repository from GitHub).
Habilitación y actualización en la base de datos¶
Habilitación de la base de datos
pgRouting is a PostgreSQL extension and depends on PostGIS to provide functionalities to end user. Below given code demonstrates enabling PostGIS and pgRouting in the database.
CREATE EXTENSION postgis;
CREATE EXTENSION pgrouting;
Checking PostGIS and pgRouting version after enabling them in the database.
SELECT PostGIS_full_version();
SELECT * FROM pgr_version();
Actualización de la base de datos
To upgrade pgRouting in the database to version 3.3.5 use the following command:
ALTER EXTENSION pgrouting UPDATE TO "3.3.5";
Puede hallar más información en https://www.postgresql.org/docs/current/sql-createextension.html
Dependencias¶
Dependencias de Compilación
Para poder compilar pgRouting, asegúrese de que se cumplen las siguientes dependencias:
C and C++0x compilers
Compilar con Boost 1.56 hasta Boost 1.74 requiere un compilador C++ con soporte estandard para C++03 o C++11
Compiling with Boost 1.75 requires C++ Compiler with C++14 standard support
Versión postgresql = Versiones compatibles por PostgreSQL
La Biblioteca de Gráficos Boost (BGL). Versión >= 1.56
CMake >= 3.2
dependencias opcionales
Para la documentación del usuario
Sphinx >= 1.1
Latex
Para la documentación del desarrollador
Doxygen >= 1.7
Para pruebas
pgtap
pg_prove
Para uso:
PostGIS version >= 2.2
Ejemplo: Instalación de dependencias en linux
Instalación de las dependencias de compilación
Dependencias de bases de datos
sudo apt install postgresql-14
sudo apt install postgresql-server-dev-14
sudo apt install postgresql-14-postgis
Configurar PostgreSQL
Entering psql console
sudo systemctl start postgresql.service
sudo -i -u postgres
psql
To exit psql console
q
Entering psql console directly without switching roles can be done by the following commands
sudo -u postgres psql
Then use the above given method to exit out of the psql console
Checking PostgreSQL version
psql --version
or
Enter the psql console using above given method and then enter
SELECT VERSION();
Creating PostgreSQL role
sudo -i -u postgres
createuser --interactive
or
sudo -u postgres createuser --interactive
Default role provided by PostgreSQL is postgres. To create new roles you can use the above provided commands. The prompt will ask the user to type name of the role and then provide affirmation. Proceed with the steps and you will succeed in creating PostgreSQL role successfully.
To add password to the role or change previously created password of the role use the following commands
ALTER USER <role name> PASSWORD <password>
To get additional details on the flags associated with createuser
below
given command can be used
man createuser
Creating Database in PostgreSQL
sudo -i -u postgres
createdb <database name>
or
sudo -u postgres createdb <database name>
Connecting to a PostgreSQL Database
Enter the psql console and type the following commands
connect <database name>
Construir dependencias
sudo apt install cmake
sudo apt install g++
sudo apt install libboost-graph-dev
Dependencias opcionales
Para documentación y pruebas
pip install sphinx
pip install sphinx-bootstrap-theme
sudo apt install texlive
sudo apt install doxygen
sudo apt install libtap-parser-sourcehandler-pgtap-perl
sudo apt install postgresql-14-pgtap
Configuración¶
pgRouting utiliza el sistema “cmake” para realizar la configuración.
El directorio de compilación es diferente del directorio de origen
Cree el directorio de compilación
$ mkdir build
Variables configurables¶
Para ver las variables que se pueden configurar
$ cd build
$ cmake -L ..
Configurar la documentación
La mayor parte del esfuerzo de la documentación ha estado en los archivos HTML. Algunas variables para construir la documentación:
Variable |
x Defecto |
Comentario |
---|---|---|
WITH_DOC |
BOOL=OFF |
Activar/desactivar la construcción de la documentación |
BUILD_HTML |
BOOL=ON |
Si está activado, active/desactive la creación de HTML para la documentación del usuario |
BUILD_DOXY |
BOOL=ON |
Si está activado, active o desactive la creación de HTML para la documentación del desarrollador |
BUILD_LATEX |
BOOL=OFF |
Si está activado, active/desactive la creación de PDF |
BUILD_MAN |
BOOL=OFF |
Si está activado, active/desactive las páginas MAN de construcción |
DOC_USE_BOOTSTRAP |
BOOL=OFF |
Si está activado, utilice sphinx-bootstrap para las páginas HTML de la documentación de los usuarios |
Configuring cmake to create documentation before building pgRouting
$ cmake -DWITH_DOC=ON -DDOC_USE_BOOTSTRAP=ON ..
Nota
La mayor parte del esfuerzo de la documentación ha estado en los archivos html.
Compilando¶
Uso de make
para compilar el código y la documentación
Las siguientes instrucciones comienzan desde path/to/pgrouting/build
$ make # build the code but not the documentation
$ make doc # build only the user's documentation
$ make all doc # build both the code and the user's documentation
$ make doxy # build only the developer's documentation
Hemos probado en varias plataformas, Para instalar o reinstalar todos los pasos son necesarios.
Advertencia
Las firmas sql se configuran y se compilan en el comando cmake
.
MinGW en Windows
$ mkdir build
$ cd build
$ cmake -G"MSYS Makefiles" ..
$ make
$ make install
Linux
Las siguientes instrucciones comienzan desde path/to/pgrouting
mkdir build
cd build
cmake ..
make
sudo make install
To remove the build when the configuration changes, use the following code:
rm -rf build
e iniciar el proceso de compilación como se mencionó anteriormente.
Pruebas¶
Actualmente no hay make test
y las pruebas se realizan de la siguiente manera
Las siguientes instrucciones comienzan desde path/to/pgrouting/
tools/testers/doc_queries_generator.pl
createdb -U <user> ___pgr___test___
sh ./tools/testers/pg_prove_tests.sh <user>
dropdb -U <user> ___pgr___test___
Ver también¶
Índices y tablas