Ich verwende xubuntu 18.04, das eine XFCE-Benutzeroberfläche hat, die mehrere GNOME-Widgets verwendet, insbesondere den Netzwerkmanager. Der Netzwerkmanager weist einige Einschränkungen auf, z. B. das Fehlen einer Möglichkeit, Netzwerke per Drag & Drop zu priorisieren. Ich kenne CLI-Möglichkeiten, dies zu tun, möchte diese Funktion jedoch zur GUI beitragen, daher versuche ich, network-manager-applet
aus dem Quellcode zu kompilieren, um mich darauf vorzubereiten, Code dazu beizutragen.
Meine Systempakete wurden mit apt-get update
und aktualisiert apt-get upgrade
.
Wenn ich eingebe:
apt-get source network-manager-applet --compile
Ich bekomme:
dpkg-checkbuilddeps: error: Unmet build dependencies: dh-translations gnome-common libnm-util-dev (>= 1.8) libnm-glib-dev (>= 1.8) libnm-glib-vpn-dev (>= 1.8) network-manager-dev (>= 1.8) libnm-dev (>= 1.8) libmm-glib-dev libjansson-dev (>= 2.7) libselinux-dev libappindicator3-dev libdbusmenu-gtk3-dev (>= 16.04) libgcr-3-dev (>= 3.14) libgck-1-dev (>= 3.14) libgirepository1.0-dev gobject-introspection gtk-doc-tools libgtk-3-doc libglib2.0-doc
dpkg-buildpackage: warning: build dependencies/conflicts unsatisfied; aborting
dpkg-buildpackage: warning: (Use -d flag to override.)
E: Build command 'cd network-manager-applet-1.8.10 && dpkg-buildpackage -b -uc' failed.
OK, fair genug, also habe ich nachgeschaut, wie man die Abhängigkeiten abruft:
sudo apt-get build-dep network-manager-applet
Reading package lists... Done
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
builddeps:network-manager-applet : Depends: libnm-dev (>= 1.8) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
OK, versuchen wir also Folgendes zu installieren libnm-dev
:
boutell@roxnsox:~/xubuntu$ sudo apt-get install libnm-dev
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:
The following packages have unmet dependencies:
libnm-dev : Depends: libnm0 (= 1.10.6-2ubuntu1.1) but 1.10.14-0ubuntu2 is to be installed
E: Unable to correct problems, you have held broken packages.
Beachten Sie, dass ich keine zurückgehaltenen Pakete habe:
boutell@roxnsox:~/xubuntu$ dpkg --get-selections | grep hold
boutell@roxnsox:~/xubuntu$
Wie löse ich den Konflikt, libnm0
um weiterzukommen?
(Mir ist bewusst, dass ich irgendwann aufhören --compile
und per cd in den Quellordner wechseln und den Code selbst erstellen muss, aber in diesem Szenario lande ich an derselben Stelle. Die oben beschriebene Abfolge von Schritten sollte zur Lösung dieses Problems geeignet sein.)
Vielen Dank für Ihre Hilfe!
Antwort1
Diese Linie:
libnm-dev : Depends: libnm0 (= 1.10.6-2ubuntu1.1) but 1.10.14-0ubuntu2 is to be installed
Schlägt vor, dass Sie eine neuere Version von libnm0 haben, als mit dem bei Ihnen verfügbaren libnm-dev kompatibel ist. Ich glaube, das ist etwas falsch formuliert.
sudo apt purge libnm0 && sudo apt install libnm-dev
Entfernt Ihre libnm0-Version und führt die Installation durch Angabe von libnm-dev durch, wodurch die benötigten Abhängigkeiten einbezogen werden.
Senden Sie einen Beitrag zurück, wenn weiterhin Abhängigkeitsfehler auftreten.
Meine Meinungaptitude
wird nach alternativen Lösungen für Abhängigkeitsprobleme suchen. Wenn Sie in Ihrem Fall im interaktiven Modus ( sudo aptitude
) „libnm-dev installieren“ angeben (indem Sie +auf den entsprechenden Eintrag klicken; bei der Suche /geben Sie dann Ihr Schlüsselwort ein), wird angezeigt, dass etwas kaputt ist, und Sie werden aufgefordert, zu drücken. eAnschließend können Sie mit ,/ .eine Liste mit Lösungen durchgehen.
Du kannstVerwenden Sie aptitude
„Gefällt mir“ apt
auch in einem Terminal: sudo aptitude installiere libnm-dev
und es sollten wiederum verschiedene Lösungen zur Behebung des Abhängigkeitsproblems angeboten werden.
Eine weitere Alternative besteht darin,Geben Sie direkt die Version von libnm0 anwas libnm-dev will:
sudo apt install libnm0=1.10.6-2ubuntu1.1
aber das funktioniert nur, wenn diese Version in Ihren Repos vorhanden ist (angegeben in /etc/apt/sources.list usw.).