Version der Entwicklungsbibliothek über die Befehlszeile finden?


11

Ich habe die C ++ Boost-Entwicklungsbibliotheken mit dem Ubuntu Software Center installiert. Das Problem ist, dass es ziemlich lange her ist und ich mich nicht erinnern kann, wo sie installiert sind und welche Version sie waren. Kann ich über die Befehlszeile etwas tun, das mir sagt, welche Version (en) ich auf meinem System installiert habe? Ich weiß, dass ich Dinge wie tun kann

gcc -v

um eine Version einer Anwendung zu erhalten, aber gibt es eine ähnliche Möglichkeit für Bibliotheken? Ich benutze Ubuntu 12.04


Was ist los mit whereis boost? Es kehrt zurück /usr/include/boost. Die meisten Bibliotheken Header sind in /usr/includeihren Binärdateien sind in der Regel in/usr/lib
con-f-Einsatz

Antworten:


20

Mit dpkg können Sie schnell herausfinden, welche Version oder wo sich eine Bibliothek befindet, auch wenn Sie den Titel nicht genau kennen, und in Ihrem Fall Boost als Abfragebegriff verwenden:

dpkg -l '*boost*'

und fragen Sie dann dpkg erneut mit dieser Option ab, um eine vollständige Liste der Dateispeicherorte zu erhalten. Jetzt kennen Sie den Namen der Datei:

dpkg -L <'name of lib'>

Der Name der Bibliothek kann beispielsweise libboost1.46-dev sein.


5

ldconfig -v benötigt sudo.

Alles, was Sie wirklich brauchen, ist, es abzufragen, damit dies funktioniert.

ldconfig -p | grep [name]


2

Verwenden Sie ldconfig -vdiese Option , um Bibliotheken und die aktuelle Versionsnummer zu drucken und grepIhre Ergebnisse zu filtern ldconfig -v | grep [name].


0

Es ist besser, das Paket der Bibliothek mit zu finden dpkg -S libXYZ.so.N.

Dann werden apt-cache showpkg libXYZdie Versionsnummern angezeigt.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.