Paket yang rusak dan instalasi ketergantungan yang belum terpenuhi QGIS, PostgreSQL dan postgis Ubuntu 14.04

15

Saya sadar bahwa ini bisa menjadi topik rangkap dua tetapi saya berjuang selama beberapa hari. Saya memutakhirkan QGIS dari 2,8 menjadi 2,18 dan setelah itu semuanya rusak. Saya tidak bisa menggunakan ekstensi PostGIS di pgadmin3.

Saya menemukan bahwa ada konflik dengan libgdal1h: jika diinstal, menghapus perpustakaan lain yang digunakan oleh PostGIS dan sebaliknya.

Saya mencoba beberapa tutorial tentang cara menginstal QGIS, seperti misalnya:

Bagaimana cara saya mendapatkan dan menginstal versi terbaru QGIS di Ubuntu?

Instal QGIS 2.14 Essen di Ubuntu 16.04 Xenial

Saya mencoba setiap saran yang dilaporkan secara online, seperti misalnya:

/ubuntu/351899/qgis-quantum-gis-install-fails-unmet-dependencies

/ubuntu/621406/dist-upgrade-in-ubuntu-14-04-uninstalled-qgis-and-result-in-unmet-dependencies

Di mana menemukan versi libgeos-c1 yang kompatibel dengan libgeos-3.5.0?

Pemasangan QGIS di Ubuntu 14.04 gagal

Selalu, jawabannya sudo apt-get install qgis python-qgisadalah:

The following packages have unmet dependencies:


python-qgis : Depends: python-qt4-sql but it is not installable
               Depends: python-qgis-common (= 1:2.14.8+20trusty-ubuntugis) but it is not going to be installed
               Depends: python-psycopg2 but it is not installable
               Depends: python-qscintilla2 but it is not installable
               Depends: python-jinja2 but it is not installable
               Depends: python-markupsafe but it is not installable
               Depends: python-pygments but it is not installable
               Depends: python-yaml but it is not installable
               Depends: python-pyspatialite but it is not installable
               Depends: libqgispython2.14.8 but it is not going to be installed
               Depends: libqgis-analysis2.14.8 but it is not going to be installed
               Depends: libqgis-core2.14.8 but it is not going to be installed
               Depends: libqgis-gui2.14.8 but it is not going to be installed
               Depends: libqgis-networkanalysis2.14.8 but it is not going to be installed
               Depends: libqgis-server2.14.8 but it is not going to be installed
               Recommends: liblwgeom-dev but it is not installable
 qgis : Depends: gdal-abi-2-1-0 but it is not installable
        Depends: libgdal20 (>= 2.0.1) but it is not installable
        Depends: libgeos-c1v5 (>= 3.4.2) but it is not installable
        Depends: libqgis-analysis2.14.8 but it is not going to be installed
        Depends: libqgis-app2.14.8 but it is not going to be installed
        Depends: libqgis-core2.14.8 but it is not going to be installed
        Depends: libqgis-gui2.14.8 but it is not going to be installed
        Depends: libqgis-networkanalysis2.14.8 but it is not going to be installed
        Depends: qgis-providers (= 1:2.14.8+20trusty-ubuntugis) but it is not going to be installed
        Depends: qgis-common (= 1:2.14.8+20trusty-ubuntugis) but it is not going to be installed
        Recommends: qgis-plugin-globe but it is not going to be installed
        Recommends: qgis-plugin-grass but it is not going to be installed
        Recommends: qgis-provider-grass but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Saya telah menghapus semua paket dan pustaka sehingga saya tidak memiliki pustaka yang terkait dengan postgis, postgres dan QGIS dengan Manajer Paket Synaptic dan semua dengan perintah:

sudo apt-get purge qgis
sudo apt-get autoremove qgis
sudo apt-get --purge remove qgis
sudo apt-get update

Namun masalahnya belum terpecahkan.

Saya mencoba untuk menghapus repo dari ubuntugis dan / atau debian pada file tersebut /etc/apt/sources.list.

Tidak ada.

Dan saya tidak mengerti mengapa, menggunakan sumber ini http://qgis.org/ubuntugis/ Saya masih memiliki masalah tentang kemunduran.

Apa yang harus saya lakukan?

Saya berencana untuk memformat laptop saya berharap ini akan membantu saya dengan paket yang rusak .. untuk paket yang rusak, saya sudah mencoba:

sudo apt-get update fix-missing
sudo apt-get install -f

tapi tidak ada yang diperbaiki.

Glori P.
sumber
Ubuntu versi apa yang Anda gunakan?
DPSSpatial
Saya memiliki Ubuntu 14.04 terpercaya
Glori P.
Alih-alih memformat PC Anda, cobalah mesin virtual dengan salinan Ubuntu yang bersih. Menghemat banyak pekerjaan transisi, dan Anda selalu dapat mundur.
AndreJ

Jawaban:

6

Saya mengalami masalah serupa saat memperbarui dari QGIS 2.16 ke 2.18.

Coba solusi ini, yang akhirnya berhasil untuk saya:

Dalam pesan kesalahan, lihat baris

Depends: ... but it is not installable

Sebelum menginstal qgis, Anda mungkin perlu menginstal paket-paket itu secara manual satu per satu. Jika mereka menginstal, coba lagi untuk menginstal QGIS, dengan beberapa atau semua dependensi rusak diselesaikan.

Mungkin membantu untuk tetap menggunakan repo debian atau ubuntugis, tetapi hindari untuk menginstal paket dari keduanya.

Dalam kasus saya, itu adalah gdal yang memblokir instalasi QGIS yang tepat.


PEMBARUAN dari komentar

Tampaknya konflik versi GDAL menghindari instalasi yang tepat.

Menurut http://postgis.net/install/ Anda memiliki tiga pilihan untuk Postgis di Ubuntu:

Ini memberi Anda postgis 2.2 dikompilasi untuk Postgres 9.3. Anda bisa mendapatkan QGIS 2.14.3 dari repo yang sama, atau menggunakan http://qgis.org/ubuntugis untuk QGIS 2.18.0 atau 2.14.8. Anda akan mendapatkan GDAL 2.1.0 dengan itu. Ini tampaknya menjadi pilihan terbaik saat ini.

Yang Anda gunakan, tetapi tidak kompatibel dengan QGIS dari ubuntugis.

Mereka menawarkan Postgis 2.1.4, 2.2.2 dan 2.3.0. Anda bisa mendapatkan QGIS LTR dari sana juga, atau menggunakan http://qgis.org/debian untuk 2.18.0, dikompilasi melawan GDAL 1.10 untuk trusty dan GDAL 1.11.3 untuk xenial.

Mereka menawarkan Postgis 2.1.2 untuk Postgres 9,3, dibangun dengan libgdal1h (GDAL 1.10.1) untuk dipercaya. Paket xenial adalah Postgis 2.2.1 yang dikompilasi melawan libgdal1i (GDAL 1.11.3). Jika Anda menginstal QGIS dari http://qgis.org/debian atau http://qgis.org/debian-ltr , Anda mendapatkan QGIS 2.18.0 atau 2.14.8 yang dikompilasi dengan versi GDAL yang sama untuk dipercaya dan populer.

Anda mendapatkan dependensi yang rusak jika Anda mencoba menggabungkan paket dari sumber yang berbeda, jadi JANGAN MELAKUKANNYA .

AndreJ
sumber
Saya punya masalah dengan gdal juga: repo mana yang Anda gunakan untuk menginstal perpustakaan ini?
Glori P.
Saya memiliki Linux Mint dan Ubuntu berjalan secara paralel, menggunakan ppa debian dan ubuntugis tidak stabil. Anda dapat menonton packages.debian.org/cgi-bin/... dan launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable paket saat ini.
AndreJ
Repo debian BTW di Linux Mint 18 berjalan dengan GDAL 1.11.3, dan ubuntugis ppa di Ubuntu 16.04 dengan GDAL 2.1.0. Keduanya menggunakan repen xenial dist. Anda mungkin lari apt list --installed | grep gdaluntuk melihat apa yang diinstal di komputer Anda.
AndreJ
Baru saja memeriksa QGIS LTR 2.14.5 di Linux Mint 17.3: Repo Ubuntu, distro tepercaya dengan ubuntugis ppa tidak stabil yang berjalan dengan GDAL 2.1.0. Pembaruan ke 2.14.8 harus memperbarui kunci, dan berjalan sudo apt-get install qgissecara manual setelah sudo apt-get updatedan upgrade.
AndreJ
Jadi akan lebih baik untuk tidak menggunakan ppa tetapi hanya repo versi stabil yang tersedia di sini qgis.org/en/site/forusers/alldownloads.html#debian-ubuntu ? dan akan lebih baik untuk menginstal qgis dari terminal dan bukan dari Synaptic Package Manager?
Glori P.
12

Saya telah menghadapi masalah serupa dalam menginstal qgis. Saya akhirnya menginstalnya menggunakan manajer paket aptitude.

Coba ini dulu:

sudo apt-get updatekemudian sudo apt-get -f install.

Jika itu tidak berhasil coba bakat manajer paket tingkat yang lebih tinggi .

sudo aptitude install qgis python-qgis qgis-plugin-grass

Ini memberikan banyak solusi seperti ini dan Anda dapat memilih satu.

Accept this solution? [Y/n/q/?] n
The following actions will resolve these dependencies:

      Downgrade the following packages:                                                                    
1)      libqt4-declarative [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]
2)      libqt4-network [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]    
3)      libqt4-opengl [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]     
4)      libqt4-script [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]     
5)      libqt4-sql [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]        
6)      libqt4-sql-sqlite [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)] 
7)      libqt4-svg [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]        
8)      libqt4-xml [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]        
9)      libqt4-xmlpatterns [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]
10)     libqtcore4 [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]        
11)     libqtdbus4 [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]        
12)     libqtgui4 [4:4.8.7+dfsg-7ubuntu1~xenialoverlay1~1 (now) -> 4:4.8.7+dfsg-5ubuntu2 (xenial)]         


Accept this solution? [Y/n/q/?] y
The following packages will be DOWNGRADED:
  libqt4-declarative libqt4-network libqt4-opengl libqt4-script libqt4-sql libqt4-sql-sqlite libqt4-svg libqt4-xml libqt4-xmlpatterns libqtcore4 libqtdbus4 libqtgui4 
The following NEW packages will be installed:
  libdrm-dev{a} libfcgi0ldbl{a} libgl1-mesa-dev{a} libglade2-0{a} libglu1-mesa-dev{a} libjs-jquery-ui{a} libjs-leaflet{a} liblwgeom-dev{a} libqca2{a} libqca2-plugin-ossl{a} libqca2-plugins{a} 
  libqgis-analysis2.18.3{a} libqgis-app2.18.3{a} libqgis-core2.18.3{a} libqgis-customwidgets{a} libqgis-gui2.18.3{a} libqgis-networkanalysis2.18.3{a} libqgis-server2.18.3{a} libqgisgrass7-2.18.3{a} 
  libqgispython2.18.3{a} libqjson0{a} libqt4-dbus{a} libqt4-designer{a} libqt4-dev{a} libqt4-dev-bin{a} libqt4-help{a} libqt4-opengl-dev{a} libqt4-qt3support{a} libqt4-scripttools{a} libqt4-test{a} 
  libqtassistantclient4{a} libqwt5-qt4{a} libspatialindex4v5{a} libx11-xcb-dev{a} libxcb-dri2-0-dev{a} libxcb-dri3-dev{a} libxcb-glx0-dev{a} libxcb-present-dev{a} libxcb-randr0-dev{a} libxcb-render0-dev{a} 
  libxcb-shape0-dev{a} libxcb-sync-dev{a} libxcb-xfixes0-dev{a} libxdamage-dev{a} libxext-dev{a} libxfixes-dev{a} libxshmfence-dev{a} libxxf86vm-dev{a} mesa-common-dev{a} python-cycler{a} python-dateutil{a} 
  python-future{a} python-gdal{a} python-glade2{a} python-httplib2{a} python-jinja2{a} python-markupsafe{a} python-matplotlib{a} python-matplotlib-data{a} python-pygments{a} python-pyparsing{a} 
  python-pyspatialite{a} python-qgis python-qgis-common{a} python-qscintilla2{a} python-qt4{a} python-qt4-sql{a} python-shapely{a} python-sip{a} python-tz{a} python-yaml{a} qdbus{a} qgis qgis-common{a} 
  qgis-plugin-grass qgis-plugin-grass-common{a} qgis-provider-grass{a} qgis-providers{a} qgis-providers-common{a} qt4-designer{a} qt4-linguist-tools{a} qt4-qmake{a} x11proto-damage-dev{a} 
  x11proto-dri2-dev{a} x11proto-fixes-dev{a} x11proto-gl-dev{a} x11proto-xext-dev{a} x11proto-xf86vidmode-dev{a} 
The following packages are RECOMMENDED but will NOT be installed:
  qt-at-spi 
0 packages upgraded, 88 newly installed, 12 downgraded, 0 to remove and 57 not upgraded.
Raja
sumber
3

Berikut ini berfungsi untuk saya di Ubuntu 16.04 dan QGIS 2.18:

sudo apt remove *qgis*
sudo apt purge *qgis*

Kemudian:

sudo apt update
sudo apt install qgis python-qgis 
Karlo Guidoni Martins
sumber
1

Saya pikir triknya adalah memiliki keduanya ubuntugisdan ubuntugis-unstablemenambahkannya ke daftar repositori Anda.

Saya kemudian menginstal gdal 2.1.0 (saya membutuhkan dukungan GeoPackage, jadi saya tidak tahu apakah ini penting), dari titik awal itu saya dapat menginstal postgis-2.2.2 dan qgis 2.18 dengan cukup senang.

Ian Turton
sumber
1
Hanya untuk mengklarifikasi, Anda usulkan http://qgis.org/ubuntugisdan http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu. Saat ini ada beberapa pekerjaan untuk memindahkan konten yang tidak stabil ke ubuntugis stabil, sehingga pengguna di masa depan mungkin akan tersandung ini.
AndreJ
1

Seperti yang disarankan @AndreJ, saya membuat mesin Virtual baru yang benar-benar bersih. Saya berhasil menginstal QGIS 2.14 dan Postgresql 9.6.

Semua langkah dan komentar dilaporkan pada intisari itu:

https://gist.github.com/GloryPassarello/dc23d443434a5221f0f981813a622e0c

Masalahnya tampaknya hanya terkait dengan PostGis: mencoba menginstal paket-paket ini:

libgdal1h
libgeos-c1
liblwgeom-2.3-0

satu per satu QGIS unistalled: tampaknya menjadi masalah dengan libgdal1h dan libgdal1 (lihat konflik libgdal1 dan libgdal1h ) dan saya ingat bahwa 3 perpustakaan ini membawa saya ke konflik awal antara qgis postgresql dan postgis.

Saya menemukan repo menarik tentang itu:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=839182

Apa yang harus saya lakukan untuk memperbaiki masalah itu? apa yang Anda sarankan?

Glori P.
sumber
launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable/… memiliki postgis 2.2. Mengapa Anda mencoba versi 2.3, dan dari mana?
AndreJ
apakah itu salah satunya: deb ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu utama terpercaya? jika saya menggunakan yang itu untuk mengambil
Glori P.
Tidak, lihat inti Anda di bawah sudo apt-cache policy postgis. Itu diambil dari http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg/main amd64 Packages.
AndreJ
Anda benar, saya tidak bisa melakukan repo itu dan saya melakukannya: sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable& sudo apt-get update& sudo apt-get install postgresql-9.3-postgis-2.2 . Tetapi hasilnya adalahThe following packages have unmet dependencies: postgresql-9.3-postgis-2.2 : Depends: libgdal1h (>= 1.9.0) but it is not going to be installed Depends: libgeos-c1 (>= 3.4.2) but it is not going to be installed E: Unable to correct problems, you have held broken packages.
Glori P.
Paket itu sepertinya masih salah. Dalam folder ppa, ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu/dists/… Packages.gz file yang saya lihat: Version: 2.2.2+dfsg-2~trusty0dan Depends: libc6 (>= 2.14), libgdal20 (>= 2.0.1).
AndreJ
1

Mengikuti Jawaban oleh AndreJ, yang menyebutkan konflik dari repetisi yang berbeda, saya menghapus baris deb http://qgis.org/dari sources.list, Anda dapat melakukannya melalui nano, yang merupakan editor yang Anda jalankan di terminal, dan hanya menyisakan baris berikut deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu trusty main:

sudo nano /etc/apt/sources.list

ini membuka editor, cukup hapus baris qgis.org, keluar melalui "Ctrl + x" dan simpan; file akan terlihat seperti ini

#deb cdrom:[Linux Mint 17.1 _Rebecca_ - Release i386 20141126]/ trusty contrib $
deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu trusty main

lalu sudo apt-get updatedansudo apt-get install qgis

pengguna3909910
sumber
Cara ubuntugis tidak berfungsi lagi, karena ubuntugis ppa yang tidak stabil telah menjatuhkan paket terpercaya.
AndreJ
0

Saya berencana untuk memformat laptop saya berharap ini akan membantu saya dengan paket yang rusak .. untuk paket yang rusak

... Jika Anda siap untuk melangkah sejauh ini, Anda mungkin juga mencoba untuk meningkatkan versi pertama ke Ubuntu LTS 16.04 terbaru, yang memiliki lebih banyak repositori pembaruan untuk banyak paket GIS. Di 16.04, saya menguji yang berikut ini untuk meningkatkan ke QGIS 2.18 terbaru tanpa masalah:

  1. hapus QGIS & hapus semua entri terkait GIS yang ada /etc/apt/sources.list

    sudo apt-get remove qgis --purge
    sudo apt-get autoremove --purge
  2. tambahkan dua baris berikut ke /etc/apt/sources.list:

    deb http://qgis.org/debian xenial main
    deb-src http://qgis.org/debian xenial main
  3. tambahkan repositori QGIS

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 073D307A618E5811
    #note, 073D307A618E5811 is the public key for the specific qgis repo here.
    sudo apt-add-repository add  http://qgis.org/debian
    #note, may require `sudo apt-get install software-properties-common` first
  4. instal QGIS:

    sudo apt-get update
    sudo apt-get install qgis
tinlyx
sumber
Dia tidak menggunakan Xenial. Dia menggunakan 14,04 (dapat dipercaya)
Evan Carroll
@EvanCarroll OP juga menyebutkan Xenial.
tinlyx
hanya mengacu pada pertanyaan lain, dia tidak menggunakan xenial. Dia memberi tahu Anda secara eksplisit apa yang dia gunakan.
Evan Carroll
@ EvanCarroll Tapi tidak only in reference to another question . Mengutip OP I tried several tutorial about how to install QGIS ... Install QGIS 2.14 Essen on Ubuntu 16.04 Xenial,.
tinlyx
@EvanCarroll Ya, saya menggunakan Ubuntu 14.04. Saya mengikuti beberapa tutorial untuk Xenial juga mengubah referensi dari Xenial ke Trusty dan mencoba cara untuk menginstal semua perangkat lunak yang saya butuhkan.
Glori P.
0

Sangat sederhana ... pastikan Anda menghapus komentar repositori sumber dari daftar sumber. etc / apt / sources / sourcelists

Pastikan Anda hanya mengomentari opsi CDROM saja dan meninggalkan daftar lain tanpa komentar.

semak
sumber
0

@ AndreJ jawaban masih benar, tetapi di sini adalah versi yang dirangkum (dan mungkin lebih saat ini) untuk mereka yang hanya ingin menginstal qgis2,18 dengan spesifikgdal versi :

Gunakan / aktifkan hanya satu dari beberapa ppas berikut:

# Option A: contains qgis 2.18.25 but locks you to gdal 1.x
deb http://qgis.org/ubuntu-ltr trusty main

# Option B: contains qgis 2.18.16 and gdal 2.2 - this is probably what most people are looking for
deb http://qgis.org/ubuntugis trusty main

Penjelasan: Jika kedua ppas diaktifkan (hingga hari ini), dependensi yang terkait dengan Option Aakan dipilih (karena memiliki versi qgis 2.18 yang sedikit lebih diperbarui), sehingga sangat sulit untuk menginstal gdal 2.x (yang benar-benar harus dilakukan melalui Option B). Tidak mudah untuk memutakhirkan langsung dari satu opsi ke opsi lain karena keduanya benar-benar mewakili dua rangkaian dependensi yang berbeda satu sama lain.

Prusswan
sumber
0

Coba pasang via flatpak

flatpak install --user https://flathub.org/repo/appstream/org.qgis.qgis.flatpakref
Márcio Rodrigues Silva
sumber