
Ich versuche, eine Anwendung mit RPM auf einem GNU/Linux-Betriebssystem zu installieren, erhalte jedoch ständig die Meldung, dass die Abhängigkeiten fehlgeschlagen sind:
rpm -i sap-1.7.54-0.i686.rpm
error: Failed dependencies:
libncurses.so.5 is needed by sap-1.7.54-0.i686
Das ist unhöflich, da ich Folgendes habe libncurses.so.5
:
bash-3.2# ls -lZ /usr/lib/libncurses*
lrwxrwxrwx 1 root root _ 19 Nov 3 10:15 /usr/lib/libncurses++.so.6 -> libncurses++.so.6.1
-rwxr-xr-x 1 root root _ 71696 Oct 23 22:27 /usr/lib/libncurses++.so.6.1
lrwxrwxrwx 1 root root _ 20 Nov 3 10:15 /usr/lib/libncurses++w.so.6 -> libncurses++w.so.6.1
-rwxr-xr-x 1 root root _ 71696 Oct 23 22:27 /usr/lib/libncurses++w.so.6.1
lrwxrwxrwx 1 root root _ 17 Mar 17 21:14 /usr/lib/libncurses.so.5 -> libncurses.so.5.9
-rwxr-xr-x 1 root root _ 158528 Mar 17 21:12 /usr/lib/libncurses.so.5.9
lrwxrwxrwx 1 root root _ 17 Nov 3 10:15 /usr/lib/libncurses.so.6 -> libncurses.so.6.1
-rwxr-xr-x 1 root root _ 169780 Oct 23 22:27 /usr/lib/libncurses.so.6.1
lrwxrwxrwx 1 root root _ 18 Mar 17 21:14 /usr/lib/libncursesw.so.5 -> libncursesw.so.5.9
-rwxr-xr-x 1 root root _ 225240 Mar 17 21:12 /usr/lib/libncursesw.so.5.9
lrwxrwxrwx 1 root root _ 18 Nov 3 10:15 /usr/lib/libncursesw.so.6 -> libncursesw.so.6.1
-rwxr-xr-x 1 root root _ 247700 Oct 23 22:27 /usr/lib/libncursesw.so.6.1
Läuft auch ldconfig
problemlos. Was kann ich tun?
Antwort1
rpm
kennt nur Dateien, die von rpm
Paketen installiert werden. Wenn Sie Folgendes ausführen:
rpm -qf /usr/lib/libncurses.so.5
(Übersetzung: Zu welchem Paket gehört diese Datei) rpm
wird Ihnen wahrscheinlich sagen, dass sie zu keinem Paket gehört.
Von hier aus haben Sie zwei Möglichkeiten:
- Stellen Sie sicher, dass /usr/lib/libncurses.so.5 von einem Paket installiert wird,
rpm
um Ihr Abhängigkeitsproblem zu lösen. - erzwingen Sie
rpm
das Ignorieren der Abhängigkeiten (rpm -i --nodeps sap-1.7.54-0.i686.rpm
). Ich empfehle dies nicht, da dadurch alle Abhängigkeiten zerstört werden und Sie Ihr System nie wieder sauber bekommen ... tun Sie dies nur als letzten Ausweg.