Найти версию библиотеки разработки из командной строки?


11

Я установил библиотеки разработки c ++ boost с помощью программного центра Ubuntu. Проблема в том, что это было довольно давно, и я не могу вспомнить, где они установлены и какой версии они были. Могу ли я что-нибудь сделать из командной строки, которая скажет мне, какие версии я установил в моей системе? Я знаю, что могу делать такие вещи, как

gcc -v

получить версию приложения, но есть ли подобная вещь для библиотек? Я использую Ubuntu 12.04


Что не так с whereis boost? Это возвращается /usr/include/boost. Большинство библиотечных заголовков находятся в /usr/includeсвоих двоичных файлах, обычно/usr/lib
con-f-use

Ответы:


20

Вы можете быстро найти, какая версия или где находится библиотека, даже если вы не совсем знаете название, с помощью dpkg и, в вашем случае, используя boost в качестве условия запроса:

dpkg -l '*boost*'

и затем снова запросите dpkg с этой опцией для получения полного списка расположений файлов, теперь вы знаете имя файла:

dpkg -L <'name of lib'>

Например, имя библиотеки может быть libboost1.46-dev.


5

ldconfig -v требует sudo.

Все, что вам действительно нужно, это запросить его, так что это будет делать.

ldconfig -p | grep [name]


2

Используйте ldconfig -vдля печати библиотек и текущего номера версии, а также grepдля фильтрации результатов ldconfig -v | grep [name].


0

Лучше найти пакет библиотеки с dpkg -S libXYZ.so.N.

Затем apt-cache showpkg libXYZотображается номер версии.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.