Wie liste ich RPM-Pakete auf, die von einer bestimmten Bibliothek abhängen?

Wie liste ich RPM-Pakete auf, die von einer bestimmten Bibliothek abhängen?

Ich möchte feststellen, welche RPM-Pakete auf meinem Fedora 25-System von den Bibliotheken libLLVM-3.8.sound abhängen libclang-3.8.so. Wie mache ich das?

Antwort1

Sie können dnf repoquerydies finden, indem Sie Folgendes verwenden. Zum Beispiel:

dnf repoquery --whatrequires libLLVM-3.8.so

Auf einem x86_64-System funktioniert dies jedoch möglicherweise nicht ganz nach Ihren Wünschen. Um die x86_64-Version einer Bibliothek anzugeben (die wahrscheinlichIstwas Sie wollen), anheften ()(64bit), wie folgt:

dnf repoquery --whatrequires 'libLLVM-3.8.so()(64bit)' 

( 'Jetzt ist es notwendig, die Klammern so zu gestalten, dass sie Bash nicht verwirren.)

Standardmäßig werden hier sowohl verfügbare als auch installierte Pakete aufgelistet. Um die Liste auf die aktuell installierten Pakete zu beschränken, fügen Sie das --installedFlag wie folgt hinzu:

dnf repoquery --whatrequires 'libLLVM-3.8.so()(64bit)'  --installed

was auf meinem System Folgendes zurückgibt:

llvm-libs-0:3.8.0-1.fc25.x86_64
mesa-dri-drivers-0:13.0.2-2.fc25.x86_64
mesa-libxatracker-0:13.0.2-2.fc25.x86_64

Wenn Sie nur Paketnamen möchten, fügen Sie hinzu --queryformat '%{name}\n'. (Verwenden Sie dnf repoquery --querytags, um andere Formatierungsoptionen zu erhalten.)

Antwort2

$ locate libLLVM-3.8.so
/usr/lib/libLLVM-3.8.so
/usr/lib64/libLLVM-3.8.so
$ rpm -qf /usr/lib64/libLLVM-3.8.so
llvm-libs-3.8.0-1.fc25.x86_64
$ sudo rpm -e --test llvm-libs-3.8.0-1.fc25.x86_64
error: Failed dependencies:
        libLLVM-3.8.so()(64bit) is needed by (installed) clang-libs-3.8.0-2.fc25.x86_64
        libLLVM-3.8.so()(64bit) is needed by (installed) mesa-dri-drivers-13.0.2-2.fc25.x86_64
        libLLVM-3.8.so()(64bit) is needed by (installed) mesa-libOpenCL-13.0.2-2.fc25.x86_64
        libLLVM-3.8.so()(64bit) is needed by (installed) mesa-libxatracker-13.0.2-2.fc25.x86_64

Gleiches gilt für die andere Datei. Oder für jede beliebige Datei.

verwandte Informationen