Încerc să instalez PostGIS peste PostgreSQL 13. Am deja un ecosistem GIS destul de instalat și rulez GDAL 3.0.4.
> dpkg -l | grep gdal
ii gdal-bin 3.0.4+dfsg-1~bionic0
ii gdal-data 3.0.4+dfsg-1~bionic0
ii libgdal-dev 3.0.4+dfsg-1~bionic0
ii libgdal26 3.0.4+dfsg-1~bionic0
ii python3-gdal 3.0.4+dfsg-1~bionic0
> dzdo apt-get install postgis postgresql-13-postgis-3
Citirea listelor de pachete... Gata
Construirea arborelui de dependență
Citirea informațiilor despre stare... Gata
Unele pachete nu au putut fi instalate. Acest lucru poate însemna că ai
a solicitat o situație imposibilă sau dacă utilizați instabil
distribuție că unele pachete necesare nu au fost încă create
sau a fost mutat din Incoming.
Următoarele informații pot ajuta la rezolvarea situației:
Următoarele pachete au dependențe neîndeplinite:
postgis: Depinde: libgdal20 (>= 2.0.1) dar nu va fi instalat
postgresql-13-postgis-3: Depinde: libgdal20 (>= 2.0.1) dar nu va fi instalat
E: Nu puteți corecta problemele, ați reținut pachete sparte.
Ciudat, având în vedere că PostGIS este promovat pentru a funcționa cel mai bine cu GDAL 3... dar bine, îl voi compila singur.
> wget https://download.osgeo.org/postgis/source/postgis-3.1.4.tar.gz
> tar xf postgis-3.1.4.tar.gz
> cd postgis-3.1.4
> ./configure --without-protobuf
> make && dzdo make uninstall && dzdo make install
face
nu reușește la construirea elementelor legate de raster2pgsql:
make[2]: se introduce în directorul „/home/USER/postgis-3.1.4/raster/loader”
/bin/bash ../../libtool --mode=link gcc -std=gnu99 -g -O2 -fno-math-errno -fno-signed-zeros -fPIC -DPIC -I../rt_core -I. ./../liblwgeom -I/usr/include/gdal -I/home/USER/anaconda3/include ../rt_core/librtcore.a raster2pgsql.o -lm -static ../../liblwgeom/liblwgeom.la -L/usr/lib -lgdal -L/home/USER/anaconda3/lib -lgeos_c -lc -o raster2pgsql
libtool: link: gcc -std=gnu99 -g -O2 -fno-math-errno -fno-signed-zeros -fPIC -DPIC -I../rt_core -I../../liblwgeom -I/usr/include /gdal -I/home/USER/anaconda3/include raster2pgsql.o -o raster2pgsql ../rt_core/librtcore.a ../../liblwgeom/.libs/liblwgeom.a -lm -L/home/USER/anaconda3 /lib -lproj -ljson-c -L/usr/lib -lgdal -lgeos_c -lc
//usr/lib/x86_64-linux-gnu/libgeotiff.so.5: referință nedefinită la `_TIFFmemcpy@LIBTIFF_4.0'
/usr/lib/libgdal.so: referință nedefinită la `TIFFReadDirectory@LIBTIFF_4.0'
/usr/lib/libgdal.so: referință nedefinită la `TIFFClientdata@LIBTIFF_4.0'
//usr/lib/x86_64-linux-gnu/libgeotiff.so.5: referință nedefinită la `_TIFFrealloc@LIBTIFF_4.0'
//usr/lib/x86_64-linux-gnu/libgeotiff.so.5: referință nedefinită la `_TIFFmemset@LIBTIFF_4.0'
/usr/lib/libgdal.so: referință nedefinită la `TIFFLastDirectory@LIBTIFF_4.0'
(...) multe alte linii cu aceeași referință la @LIBTIFF_4.0
collect2: eroare: ld a returnat 1 stare de ieșire
Makefile:84: rețeta pentru țintă „raster2pgsql” a eșuat
make[2]: *** [raster2pgsql] Eroare 1
make[2]: Ieșim din directorul „/home/USER/postgis-3.1.4/raster/loader”
Makefile:35: rețeta pentru „rtloader” țintă a eșuat
make[1]: *** [rtloader] Eroare 2
make[1]: Ieșim din directorul „/home/USER/postgis-3.1.4/raster”
GNUmakefile:22: rețeta pentru „toate” țintă a eșuat
make: *** [toate] Eroare 1
Eroarea sugerează că lipsesc unele libtiff4
. Cu toate acestea, când încercați să-l instalați:
> dzdo apt-get install libtiff4
E: Imposibil de localizat pachetul libtiff4
> dzdo apt-get install libtiff4-dev
Pachetul libtiff4-dev nu este disponibil, dar se referă la un alt pachet.
Acest lucru poate însemna că pachetul lipsește, a fost învechit sau
este disponibil numai din altă sursă
Cu toate acestea, următoarele pachete îl înlocuiesc:
libtiff5-dev:i386 libtiff5-dev
E: Pachetul „libtiff4-dev” nu are un candidat pentru instalare
> dzdo apt-get install libtiff5-dev
libtiff5-dev este deja cea mai nouă versiune (4.0.9-5).
libtiff
pare a fi instalat, însă în versiunea sa 5. La examinarea posibilităţilor de instalare libgdal20
cu aptitudini
, soluțiile propuse vor elimina multe dintre pachetele GIS pe care le folosesc, așa că aceasta nu este chiar o opțiune. Nu sunt sigur cum să procedez.. orice ajutor este apreciat!