Fehlerhafte Pakete und nicht erfüllte Abhängigkeiten Installation QGIS, PostgreSQL und Postgis Ubuntu 14.04

15

Mir ist bewusst, dass dies ein doppeltes Thema sein könnte, aber ich habe einige Tage zu kämpfen. Ich habe QGIS von 2.8 auf 2.18 aktualisiert und danach ist alles kaputt gegangen. Ich konnte die PostGIS-Erweiterung auf pgadmin3 nicht verwenden.

Ich habe herausgefunden, dass es einen Konflikt mit a gibt libgdal1h: Wenn es installiert ist, werden andere Bibliotheken entfernt, die von PostGIS verwendet werden, und umgekehrt.

Ich habe verschiedene Tutorials zum Installieren von QGIS ausprobiert, zum Beispiel:

Wie bekomme und installiere ich die neueste Version von QGIS in Ubuntu?

Installieren Sie QGIS 2.14 Essen unter Ubuntu 16.04 Xenial

Ich habe jeden online gemeldeten Vorschlag ausprobiert, wie zum Beispiel:

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

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

Wo finde ich eine Version von libgeos-c1, die mit libgeos-3.5.0 kompatibel ist?

QGIS-Installation unter Ubuntu 14.04 schlägt fehl

Immer sudo apt-get install qgis python-qgislautet die Antwort von :

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.

Ich habe alle Pakete und Bibliotheken entfernt, so dass ich keine Bibliothek in Bezug auf Postgis, Postgres und QGIS mit dem Synaptic Package Manager und allen folgenden Befehlen habe:

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

Das Problem ist aber noch nicht gelöst.

Ich habe versucht, das Repo von Ubuntugis und / oder Debian aus der Datei zu entfernen /etc/apt/sources.list.

Nichts.

Und ich verstehe nicht, warum ich unter Verwendung dieser Quelle http://qgis.org/ubuntugis/ immer noch Probleme mit den Abhängigkeiten habe.

Was soll ich machen?

Ich plane, meinen Laptop zu formatieren, in der Hoffnung, dass dies mir bei defekten Paketen hilft. Für die defekten Pakete habe ich bereits versucht:

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

aber nichts behoben.

Glori P.
quelle
welche Version von Ubuntu benutzt du?
DPSSpatial
Ich habe Ubuntu 14.04 vertrauenswürdig
Glori P.
Versuchen Sie es mit einer virtuellen Maschine mit einer sauberen Ubuntu-Kopie, anstatt Ihren PC zu formatieren. Spart Ihnen viel Übergangsarbeit und Sie können jederzeit einen Schritt zurücktreten.
AndreJ

Antworten:

5

Beim Aktualisieren von QGIS 2.16 auf 2.18 sind ähnliche Probleme aufgetreten.

Versuchen Sie diese Problemumgehung, die endlich für mich funktioniert hat:

Achten Sie in der Fehlermeldung auf die Zeilen

Depends: ... but it is not installable

Vor der Installation von qgis müssen Sie diese Pakete möglicherweise einzeln manuell installieren. Wenn sie installiert sind, versuchen Sie erneut, QGIS zu installieren, wobei einige oder alle fehlerhaften Abhängigkeiten behoben sind.

Es kann hilfreich sein, sich an das Debian- oder Ubuntugis-Repo zu halten, aber keine Pakete von beiden zu installieren.

In meinem Fall hat gdal die ordnungsgemäße Installation von QGIS blockiert.


UPDATE von Kommentaren

Es scheint, dass GDAL-Versionskonflikte die ordnungsgemäße Installation verhindern.

Laut http://postgis.net/install/ hast du drei Möglichkeiten für Postgis unter Ubuntu:

Dies gibt Ihnen postgis 2.2 für Postgres 9.3 kompiliert. Sie können QGIS 2.14.3 aus demselben Repository beziehen oder http://qgis.org/ubuntugis for QGIS 2.18.0 oder 2.14.8 verwenden. Damit erhalten Sie GDAL 2.1.0. Dies scheint derzeit die beste Wahl zu sein.

Die, die Sie verwendet haben, aber nicht mit QGIS von Ubuntugis kompatibel sind.

Sie bieten Postgis 2.1.4, 2.2.2 und 2.3.0 an. Sie können QGIS LTR auch von dort herunterladen oder http://qgis.org/debian für 2.18.0 verwenden, kompiliert gegen GDAL 1.10 für Trusty und GDAL 1.11.3 für Xenial.

Sie bieten Postgis 2.1.2 für Postgres 9.3 an, das mit libgdal1h (GDAL 1.10.1) für Trusty erstellt wurde. Das Xenial-Paket ist Postgis 2.2.1, das mit libgdal1i (GDAL 1.11.3) kompiliert wurde. Wenn Sie QGIS von http://qgis.org/debian oder http://qgis.org/debian-ltr installieren , erhalten Sie QGIS 2.18.0 oder 2.14.8, die für Trusty und Xenial mit denselben GDAL-Versionen kompiliert wurden.

Sie erhalten Abhängigkeiten gebrochen , wenn Sie versuchen , Pakete aus verschiedenen Quellen zu kombinieren, so ES NICHT TUN .

AndreJ
quelle
Ich habe auch Probleme mit gdal: Welches Repo haben Sie für die Installation dieser Bibliothek verwendet?
Glori P.
Ich habe Linux Mint und Ubuntu parallel laufen, mit Debian und Ubuntugis unstable ppa. Sie können packages.debian.org/cgi-bin/… und launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable nach aktuellen Paketen durchsuchen .
AndreJ
BTW debian repo unter Linux Mint 18 läuft mit GDAL 1.11.3 und ubuntugis ppa unter Ubuntu 16.04 mit GDAL 2.1.0. Beide benutzen das xenial dist repo. Sie könnten ausführen, um apt list --installed | grep gdalzu sehen, was auf Ihrem Computer installiert ist.
AndreJ
Ich habe gerade QGIS LTR 2.14.5 unter Linux Mint 17.3 überprüft: Ubuntu repo, vertrauenswürdige Distribution mit Ubuntugis unstable ppa, die mit GDAL 2.1.0 läuft. Die Aktualisierung auf 2.14.8 erfordert die Aktualisierung des Schlüssels und die sudo apt-get install qgismanuelle Ausführung nach sudo apt-get updateund upgrade.
15.
Es wäre also besser, nicht das ppa zu verwenden, sondern nur die hier verfügbaren stabilen Versions-Repos. Qgis.org/en/site/forusers/alldownloads.html#debian-ubuntu ? und es wäre besser, qgis vom Terminal und nicht vom Synaptic Package Manager zu installieren?
Glori P.
12

Ich hatte ein ähnliches Problem mit der Installation von QGIS. Ich habe es schließlich mit aptitude package manager installiert.

Versuchen Sie dies zuerst:

sudo apt-get updatedann sudo apt-get -f install.

Wenn das nicht funktioniert , versuchen , den fortschrittlicheren Paketmanager aptitude .

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

Es gibt mehrere Lösungen wie diese und Sie können eine auswählen.

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
quelle
3

Folgendes funktionierte für mich unter Ubuntu 16.04 und QGIS 2.18:

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

Dann:

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

Ich denke, der Trick besteht darin, beides zu haben ubuntugisund ubuntugis-unstablezu Ihrer Repository-Liste hinzuzufügen.

Ich habe dann gdal 2.1.0 installiert (ich brauchte GeoPackage-Unterstützung, daher weiß ich nicht, ob dies wesentlich ist). Von diesem Ausgangspunkt aus kann ich postgis-2.2.2 und qgis 2.18 ziemlich glücklich installieren.

Ian Turton
quelle
1
Zur Verdeutlichung schlagen Sie http://qgis.org/ubuntugisund vor http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu. Derzeit wird daran gearbeitet, unstable-Inhalte von ubuntugis auf ubuntugis stable zu verschieben, sodass zukünftige Benutzer möglicherweise darüber stolpern.
AndreJ
1

Wie @AndreJ vorschlug, habe ich eine neue virtuelle Maschine erstellt, die vollständig sauber ist. Ich habe QGIS 2.14 und Postgresql 9.6 erfolgreich installiert.

Alle Schritte und Kommentare werden zu diesem Kern berichtet:

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

Das Problem scheint nur mit PostGis zu zusammenhängen: Versuchen, diese Pakete zu installieren:

libgdal1h
libgeos-c1
liblwgeom-2.3-0

eins nach dem anderen nicht kristallisiertes QGIS: Es scheint ein Problem mit libgdal1h und libgdal1 zu geben (siehe libgdal1 und libgdal1h Konflikt ) und ich erinnere mich, dass diese 3 Bibliotheken mich zum anfänglichen Konflikt zwischen qgis postgresql und postgis brachten.

Ich habe dazu ein interessantes Repo gefunden:

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

Was soll ich tun, um das Problem zu beheben? was schlagen Sie vor?

Glori P.
quelle
launchpad.net/~ubuntugis/+archive/ubuntu/ubuntugis-unstable/... hat postgis 2.2 zur Verfügung. Warum probierst du Version 2.3 und von wo?
AndreJ
ist es das: deb ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu trusty main? Wenn es so ist, habe ich das für den Abruf verwendet
Glori P.
Nein, schau in deinen Kern unter sudo apt-cache policy postgis. Es ist entnommen aus http://apt.postgresql.org/pub/repos/apt/ trusty-pgdg/main amd64 Packages.
AndreJ
Sie haben Recht, ich habe das Repo aufgehoben, und ich habe es getan: sudo add-apt-repository ppa:ubuntugis/ubuntugis-unstable& sudo apt-get update& sudo apt-get install postgresql-9.3-postgis-2.2 . Aber die Ausgabe warThe 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.
Dieses Paket scheint immer noch das falsche zu sein. Im ppa-Ordner ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu/dists/… Packages.gz file sehe ich: Version: 2.2.2+dfsg-2~trusty0und Depends: libc6 (>= 2.14), libgdal20 (>= 2.0.1).
17.
1

Nach der Antwort von AndreJ, in der die Konflikte von verschiedenen Wiederholungen erwähnt werden, habe ich die Zeilen deb http://qgis.org/aus der sources.list gelöscht . Sie können dies mit nano tun, einem Editor, den Sie auf dem Terminal ausführen, und nur die folgenden Zeilen belassen deb http://ppa.launchpad.net/ubuntugis/ubuntugis-unstable/ubuntu trusty main:

sudo nano /etc/apt/sources.list

dies öffnet den Editor, löscht einfach die qgis.org-Zeilen, beendet durch "Strg + x" und speichert; Die Datei sollte so aussehen

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

dann sudo apt-get updateundsudo apt-get install qgis

user3909910
quelle
Der Ubuntugis-Weg funktioniert nicht mehr, weil der Ubuntugis-unstable-ppa alle vertrauenswürdigen Pakete verworfen hat.
AndreJ
0

Ich plane, meinen Laptop zu formatieren, in der Hoffnung, dass dies mir bei defekten Paketen hilft .. für die defekten Pakete

... Wenn Sie bereit sind, so weit zu gehen, können Sie auch versuchen, zuerst ein Upgrade auf das neueste Ubuntu LTS 16.04 durchzuführen, das mehr Update-Repositorys für viele GIS-Pakete enthält. In 16.04 habe ich Folgendes getestet, um problemlos auf das neueste QGIS 2.18 zu aktualisieren:

  1. Entfernen Sie QGIS und entfernen Sie alle vorhandenen GIS-bezogenen Einträge in /etc/apt/sources.list

    sudo apt-get remove qgis --purge
    sudo apt-get autoremove --purge
  2. Fügen Sie die folgenden zwei Zeilen hinzu /etc/apt/sources.list:

    deb http://qgis.org/debian xenial main
    deb-src http://qgis.org/debian xenial main
  3. QGIS-Repository hinzufügen

    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. QGIS installieren:

    sudo apt-get update
    sudo apt-get install qgis
Tinlyx
quelle
Er benutzt Xenial nicht. Er verwendet 14.04 (vertrauenswürdig)
Evan Carroll
@EvanCarroll Das OP erwähnt auch Xenial.
Tinlyx
nur in bezug auf eine andere frage benutzt er kein xenial. Er sagt dir ausdrücklich, was er benutzt.
Evan Carroll
@EvanCarroll Ist es aber nicht only in reference to another question . Unter Angabe der OP I tried several tutorial about how to install QGIS ... Install QGIS 2.14 Essen on Ubuntu 16.04 Xenial.
Tinlyx
@EvanCarroll Ja, ich habe Ubuntu 14.04. Ich habe ein Tutorial für Xenial gelesen, indem ich den Verweis von Xenial auf Trusty geändert und versucht habe, alle benötigten Softwareprogramme zu installieren.
Glori P.
0

Es ist sehr einfach ... Stellen Sie sicher, dass Sie die Quellen-Repositorys aus der Quellenliste entfernen. etc / apt / sources / sourcelists

Stellen Sie sicher, dass Sie nur die CD-ROM-Option kommentieren und die anderen Listen nicht kommentieren.

Busch
quelle
0

@ AndreJs Antwort ist immer noch richtig, aber hier ist eine zusammengefasste (und vielleicht aktuellere) Version für diejenigen, die nur qgis2.18 mit einer bestimmten gdalVersion installieren möchten :

Benutze / aktiviere nur einen der folgenden ppas:

# 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

Erläuterung: Wenn beide ppas aktiviert sind (Stand heute), werden die mit verbundenen Abhängigkeiten Option Aausgewählt (da es sich um die etwas aktuellere Version von qgis 2.18 handelt), was die Installation von gdal 2.x (was wirklich notwendig ist) sehr schwierig macht erledigt über Option B). Ein direktes Upgrade von einer Option auf die andere ist nicht einfach, da es sich tatsächlich um zwei recht unterschiedliche Sätze von Abhängigkeiten handelt, die sich gegenseitig ausschließen.

prusswan
quelle
0

Versuchen Sie, über zu installieren flatpak

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