ฉันกำลังพยายามติดตั้ง PostGIS บน PostgreSQL 13 ฉันมีระบบนิเวศ GIS อยู่แล้ว และเรียกใช้ GDAL 3.0.4
> dpkg -l | เกรป กดาล
ii gdal-bin 3.0.4+dfsg-1~bionic0
ii ข้อมูล gdal 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 ติดตั้ง postgis postgresql-13-postgis-3
กำลังอ่านรายการแพ็กเกจ...เสร็จแล้ว
สร้างต้นไม้พึ่งพา
กำลังอ่านข้อมูลสถานะ...
ไม่สามารถติดตั้งบางแพ็คเกจได้ นี่อาจหมายความว่าคุณมี
ร้องขอสถานการณ์ที่เป็นไปไม่ได้หรือหากคุณใช้สถานการณ์ที่ไม่เสถียร
การกระจายที่ยังไม่ได้สร้างแพ็คเกจที่จำเป็นบางอย่าง
หรือถูกย้ายออกจากขาเข้า
ข้อมูลต่อไปนี้อาจช่วยแก้ไขสถานการณ์ได้:
แพ็คเกจต่อไปนี้มีการพึ่งพาที่ไม่ตรงกัน:
postgis : ขึ้นอยู่กับ: libgdal20 (>= 2.0.1) แต่จะไม่ถูกติดตั้ง
postgresql-13-postgis-3 : ขึ้นอยู่กับ: libgdal20 (>= 2.0.1) แต่จะไม่ถูกติดตั้ง
E: ไม่สามารถแก้ไขปัญหาได้ คุณมีพัสดุที่เสียหาย
แปลกเนื่องจาก PostGIS มีการโฆษณาว่าทำงานได้ดีที่สุดกับ GDAL 3... แต่ไม่เป็นไร ฉันจะรวบรวมเอง
> wget https://download.osgeo.org/postgis/source/postgis-3.1.4.tar.gz
> tar xf postgis-3.1.4.tar.gz
> ซีดี postgis-3.1.4
> ./configure --without-protobuf
> ทำ && dzdo ถอนการติดตั้ง && dzdo ทำการติดตั้ง
ทำ
ล้มเหลวเมื่อสร้างองค์ประกอบที่เกี่ยวข้องกับ raster2pgsql:
make[2]: เข้าสู่ไดเร็กทอรี '/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: ลิงค์: 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: การอ้างอิงที่ไม่ได้กำหนดถึง `_TIFFmemcpy@LIBTIFF_4.0'
/usr/lib/libgdal.so: ไม่ได้กำหนดการอ้างอิงถึง `TIFFReadDirectory@LIBTIFF_4.0'
/usr/lib/libgdal.so: ไม่ได้กำหนดการอ้างอิงถึง `TIFFClientdata@LIBTIFF_4.0'
//usr/lib/x86_64-linux-gnu/libgeotiff.so.5: การอ้างอิงที่ไม่ได้กำหนดถึง `_TIFFrealloc@LIBTIFF_4.0'
//usr/lib/x86_64-linux-gnu/libgeotiff.so.5: การอ้างอิงที่ไม่ได้กำหนดถึง `_TIFFmemset@LIBTIFF_4.0'
/usr/lib/libgdal.so: ไม่ได้กำหนดการอ้างอิงถึง `TIFFLastDirectory@LIBTIFF_4.0'
(...) อีกหลายบรรทัดที่มีการอ้างอิงเดียวกันถึง @LIBTIFF_4.0
Collect2: ข้อผิดพลาด: ld ส่งคืนสถานะการออก 1 รายการ
Makefile:84: สูตรสำหรับเป้าหมาย 'raster2pgsql' ล้มเหลว
ทำ [2]: *** [raster2pgsql] ข้อผิดพลาด 1
ทำ [2]: ออกจากไดเร็กทอรี '/home/USER/postgis-3.1.4/raster/loader'
Makefile:35: สูตรสำหรับเป้าหมาย 'rtloader' ล้มเหลว
ทำให้ [1]: *** [rtloader] ข้อผิดพลาด 2
make[1]: ออกจากไดเร็กทอรี '/home/USER/postgis-3.1.4/raster'
GNUmakefile:22: สูตรสำหรับเป้าหมาย 'ทั้งหมด' ล้มเหลว
ทำ: *** [ทั้งหมด] ข้อผิดพลาด 1
ข้อผิดพลาดแนะนำบางอย่างที่ขาดหายไป libtiff4
. อย่างไรก็ตาม เมื่อพยายามติดตั้ง:
> dzdo apt-get ติดตั้ง libtiff4
E: ไม่พบแพ็คเกจ libtiff4
> dzdo apt-get ติดตั้ง libtiff4-dev
ไม่มีแพ็คเกจ libtiff4-dev แต่ถูกอ้างถึงโดยแพ็คเกจอื่น
ซึ่งอาจหมายความว่าแพ็คเกจหายไป ล้าสมัย หรือ
มีให้จากแหล่งอื่นเท่านั้น
อย่างไรก็ตาม แพ็คเกจต่อไปนี้แทนที่:
libtiff5-dev:i386 libtiff5-dev
E: แพ็คเกจ 'libtiff4-dev' ไม่มีตัวเลือกการติดตั้ง
> dzdo apt-get ติดตั้ง libtiff5-dev
libtiff5-dev เป็นเวอร์ชันใหม่ล่าสุดแล้ว (4.0.9-5)
libtiff
ดูเหมือนจะติดตั้งในเวอร์ชัน 5 แล้ว เมื่อตรวจสอบความเป็นไปได้ในการติดตั้ง libgdal20
กับ ความถนัด
โซลูชันที่เสนอจะลบแพ็คเกจ GIS จำนวนมากที่ฉันใช้อยู่ ดังนั้นนี่จึงไม่ใช่ตัวเลือกจริงๆ ฉันไม่แน่ใจว่าจะดำเนินการต่ออย่างไร .. ความช่วยเหลือใด ๆ ที่ชื่นชม!