4 votos

Problemas con la activación de una base de datos PostGIS en Mac

He instalado PostGIS en el mac utilizando los binarios disponibles en http://www.kyngchaos.com/software:postgres

Postgres v 9.1.3

PostGIS v 2.0

Después quiero habilitar postgis para mi base de datos. He intentado utilizar la consulta CREATE EXTENSION. Pero me da error diciendo que la extensión no está disponible. Entonces intenté

sudo -u postgres psql -d [your database] -f /usr/local/pgsql/share/contrib/postgis-2.0/postgis.sql
Password: 
SET
BEGIN
psql:/usr/local/pgsql/share/contrib/postgis-2.0/postgis.sql:69: ERROR:  could not access file "$libdir/postgis-2.0": No such file or directory

¿Cómo puedo hacer que $libdir se expanda en la ruta que encontré ejecutando

$ pg_config --pkglibdir
/usr/lib/postgresql

El /usr/lib/postgresql NO contiene postgis-2.0.

Escarbando durante unas horas más encontré una solución chapucera:

export PATH=/usr/local/pgsql/bin:$PATH

Esto hace que el pg_config mágicamente cambiar a:

$ pg_config --pkglibdir
/usr/local/pgsql-9.1/lib

Y entonces yo hardcode esa ruta en el archivo postgis.sql. Pero quiero saber por qué $libdir no se resuelve automáticamente.

5voto

Zian Choy Puntos 964

Me sale el mismo error después de actualizar postgres con una instalación de postgis que funciona. Aunque esto no responde a la pregunta original, añado esta respuesta ya que el error es el mismo. Los archivos .so de postgis no estarán en el directorio del paquete postgres ( pg_config --pkglibdir ) después de una nueva instalación de Postgres. Estos archivos deben estar allí:

$ ls -l /usr/local/Cellar/postgresql/9.2.3/lib | grep postgis
-rwxr-xr-x  1 tee  wheel   585416 Feb 24 14:39 postgis-2.0.so
-rwxr-xr-x  1 tee  wheel   434752 Feb 24 14:39 rtpostgis-2.0.so

La solución más sencilla es reinstalar postgis después de una actualización de postgres:

brew uninstall postgis
brew install postgis

2voto

zhm Puntos 36

Cuando ejecutas psql, probablemente estás ejecutando el binario que está instalado en OSX por defecto en /usr/bin. Ejecuta 'which psql' para estar seguro. Alterando su $PATH like that changes which pg_config you're using. That's not a hacky solution to change your $ PATH así, está perfectamente bien. Recomiendo instalar Postgres y PostGIS usando homebrew.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X