¿Reparando GDAL y PROJ.4 rotos en Ubuntu?

13

Resolví el problema de la biblioteca, pero quedan otros, solo vagamente relacionados con la biblioteca PROJ.4 no cargada. Hice una pregunta de seguimiento para estos.

Mi paquete GDAL y la biblioteca PROJ.4 están dañados, lo que causa errores al intentar reproyectar archivos (consulte la pregunta anterior a continuación). No sé si este problema comenzó mientras instalé por error otra instancia de GDAL o antes; sin embargo, lo desinstalé y reinstalé QGIS y el problema persiste.

Después de cada reinstalación, QGIS tiene los mismos complementos que antes, por lo que la parte que causa los errores no se ve afectada por el proceso de instalación / desinstalación.

¿Qué he intentado?

  • sudo apt-get remove build-essential python-all-devy sudo apt-get remove gdal-binpara purgar el GDAL instalado manualmente
  • (des) instalar QGIS con el Centro de software de Ubuntu
  • sudo apt-get --purge autoremove
  • dpkg -l | grep '^rc' | awk '{print $2}' | sudo xargs dpkg --purgey dpkg --list | grep "^rc" | cut -d " " -f 3 | xargs sudo dpkg --purgepara purgar los archivos de configuración

Aún no hay suerte. Encontré algo que parecía relacionado , pero eso es para Windows, no para mi Ubuntu 14.04. ¿Qué más (y cómo) debo purgar antes de la próxima instalación de QGIS?


La pregunta original:

Intento reproyectar algunos shapefiles con ogr2ogr. Sin embargo, siempre recibo el siguiente error:

ERROR 6: Unable to load PROJ.4 library (libproj.so), creation of
OGRCoordinateTransformation failed.
Failed to create coordinate transformation between the
following coordinate systems.  This may be because they
are not transformable, or because projection services
(PROJ.4 DLL/.so) could not be loaded.

Probé esto con varias transformaciones, incluidas combinaciones básicas como WGS84 (EPSG: 4326) a UTM (EPSG: 3857), y este error ocurre todo el tiempo.

El problema podría deberse al hecho de que, aunque tengo GDAL con mi QGIS (2.10), lo instalé por error una vez más (desde la fuente, haciéndolo como sugiere esta respuesta ).

Después de enfrentar este problema varias veces, intenté desinstalar la nueva instancia de GDAL ( sudo apt-get remove build-essential python-all-devy sudo apt-get remove gdal-binno estoy seguro de si se eliminó limpiamente o no).

En /USR/LIB/tengo libproj.so.0y libproj.so.0.7.0, no libproj.so. No puedo verlo incluso con los archivos ocultos que se muestran. Sin embargo, cuando lo intento ln -s libproj.so.0.7.0 libproj.so(o lo mismo con sudo), se queja de que libproj.soya existe.

Pavel V.
fuente
Puede ser útil eliminar y reinstalar qgis también.
AndreJ
@AndreJ: reinstalado y nada cambió. Sin embargo, los archivos asociados parecen intactos (tengo los mismos complementos que antes de la reinstalación de QGIS, etc.), así que intentaré eliminarlo por completo ahora.
Pavel V.
Creo que deberías editar el título y las etiquetas. Su problema es un problema de instalación y es posible que desee preguntar cómo corregir una instalación dañada.
user30184
@ user30184: editado, como sugirió.
Pavel V.
2
Ese mensaje de error parece indicar que libproj no se está cargando. Aunque los paquetes ya deberían haberlo hecho, ¿has corrido sudo ldconfig? Además, ¿la salida de ldd ogrinfo(puede que tenga que proporcionar la ruta completa para ogrinfo) muestra libproj.so y está en el directorio que esperaba (/ usr / lib)?
Evil Genius

Respuestas:

12

En /gis/158457/gdal2tiles-how-to-make-filenames-of-tiles-to-represent-xyz-coordinates , alguien menciona hacer:

sudo ln -s /usr/lib/libproj.so.0 /usr/lib/libproj.so

Lo que solucionó absolutamente el mismo error (ERROR 6: No se puede cargar la biblioteca PROJ.4 (libproj.so)) para mí.


En la arquitectura x86_64 puede que necesite usar esta variación:

sudo ln -s /usr/lib64/libproj.so.0 /usr/lib/libproj.so
Akhorus
fuente
1
Esto lo resolvió para mí, y estaba tratando de encontrarlo por el nombre del archivo en el error, mientras que se llama libproj.so.0
ekerner el
1
Necesitaba hacer un enlace simbólico con ambos libprojy gdalcon diferentes números, es decir, ln -s /usr/lib/libproj.so.15 /usr/lib/libproj.so; ln -s /usr/lib/libgdal.so.20 /usr/lib/libgdal.sopero trabajando para mí ahora, ¡gracias por la dirección!
otradave
8

Después de varias formas incorrectas, incluida la reinstalación múltiple del libproj0paquete e incluso la instalación de QGIS desde fuentes diferentes a las predeterminadas del Centro de software de Ubuntu (creo que es del repositorio oficial de QGIS http://qgis.org/debian trusty main), entendí cómo aplicar los consejos de @EvilGenius: ldd ogrinfono mostró libprojningún importa cuántas veces lo use sudo ldconfig, hasta que escribí:

export LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib

Desde entonces, la biblioteca se lee normalmente.

Pavel V.
fuente
7

Tratar:

sudo apt-get install libproj-dev

Resolvió el mismo error para mí cuando uso gdal_translate para extraer bandas de una imagen hdf.

Sandino
fuente
0

use --with-static-proj al compilar bibliotecas de gdal.

codeadict
fuente
1
Sería útil incluir un poco de explicación junto con su respuesta
Midavalo