Antworten:
Unterwegs können Sie mit equery
der depends
Funktion die Liste der Dinge abrufen, die von einem Paket abhängen.
# equery depends perl
Wenn Sie alle neu erstellen möchten, versuchen Sie Folgendes:
# emerge -a --oneshot `equery depends perl|awk '{print " ="$1}'`
Sie haben Probleme damit, wenn Sie Pakete installiert haben, die aus dem Portage-Baum entfernt wurden. Daher ist eine vorherige Synchronisierung und ein Welt-Update eine gute Idee.
Für diesen speziellen Fall möchten Sie vielleicht auch einen Blick darauf werfen app-admin/perl-cleaner
- es verfügt über spezielle Funktionen zum Neuerstellen von Perl-Modulen.
Versuchen Sie es mit revdep-rebuild
(aus dem app-portage/gentoolkit
Paket, wie equery
). Es ist ein Tool, das das System nach defekten Abhängigkeiten durchsucht (z. B. fehlende gemeinsam genutzte Bibliotheken) und die Pakete mit defekten Abhängigkeiten neu erstellt. Ein Vorteil gegenüber Mat's Methode ist, dass Sie in den meisten Fällen nicht alle Pakete neu erstellen müssen, die von einem anderen abhängen.
USE
Abhängigkeitsinformationen bereits richtig behandelt. Da es sich um ein Problem handelt perl
, gibt es für einen solchen Job ein spezielles Werkzeug : app-admin/perl-cleaner
.
perl-cleaner --all
aber es wurde nicht neu erstellt, vim
was dagegen verknüpft ist libperl.so
.
vim
hängt perl
nur davon ab, ob es mit perl
Useflag gebaut wurde! (Das ist auch ein Grund, warum Mats Methode viel zu viele Umbauten erzwingen könnte.)
revdep-rebuild
ist das erste, was ich versucht habe, aber es kann diesen Fall nicht behandeln, da die Bibliothek (libperl.so) vorhanden ist, aber einige Symbole fehlen.