Apt-файл пошуковик файлів у пакетах, як встановлених так і немає, Debian GNU

Чи пробували Ви коли-небудь зібрати (скомпілювати) якусь програму з tar архіву і стикалися з необхідністю завантаження пакетів які потрібні програмі для компіляції? У цьому випадку Ви, можливо, потребували пошуку пакетів, які необхідні для задоволення цих залежностей. Іноді, в README файлі заявлено про те, які додаткові пакети Ви потребуєте, але це буває корисно тільки іноді.

Один спосіб дізнатися, який пакет повинен бути встановлений, полягає у використанні ресурсу debian package search page.

Інший шлях полягає у використанні утиліти apt-file. Він працює як локальний пошук, заснований на базах apt, які у Вас у файлі /etc/apt/sources.list.

Використовуючи apt-file, потрібно створити базу даних для пошуку, оновити яку можна з-під root'a.

Тоді як звичайний користувач, який шукає файл за допомогою apt-file search і отримує імена пакетів, які містять ім'я файлу, який він шукають. Встановити пакет можна за допомогою apt-get, тим самим залежності будуть віднесені вітром!

apt-file розташований у пакеті apt-file як у Debian так і в Ubuntu.

Після встановлення створіть базу даних за допомогою команди apt-file update.

Приклад використання apt-file.

Я спробував скомпілювати простий приклад, який видає таке:

/code/eget/all/pam$ make gcc pamexample.c -o pamexample -lpam -lpam_misc pamexample.c:12:31: error: security/pam_appl.h: Filen eller katalogen finns inte pamexample.c:13:31: error: security/pam_misc.h: Filen eller katalogen finns inte [. ]

Здається мені потрібний невідомий файл pam_appl.h. Час використовувати apt-file!

/code/eget/all/pam$ apt-file search pam_appl.h libpam-doc:usr/share/doc/libpam-doc/html/pam_appl.html libpam0g-dev: usr/include/security/pam_appl.h lsb-build-base2: usr/include/lsb2/security/pam_appl. h lsb-build-base3: usr/include/lsb3/security/pam_appl.h pauls@voltaire:

Кажется мені слід встановити libpam0g-dev

/code/eget/all/pam$ su - voltaire:

# apt-get install libpam0g-dev Читання списків пакетів. Готово Створення дерева залежностей. Готово Буде встановлено такі НОВІ пакунки libpam0g-dev 0 оновлених, 1 нововстановлених, 0 для видалення та 0 не оновлених. Потрібно отримати 118 КБ архівів. Після розпакування буде використано 365 КБ додаткового дискового простору. Отримати: 1 http://merkel.debian.org unstable/main libpam0g-dev 0.79-4 [118kB] Отримано 118kB за 2 секунди (47,9kB/s) Вибір попередньо скасованого вибору пакета libpam0g-dev . (Читання бази даних. Наразі встановлено 123647 файлів і каталогів.) Розпакування libpam0g-dev (з . /libpam0g-dev_0.79-4_i386.deb) . Налаштування libpam0g-dev (0.79-4) . вольтер:

Попробуем скомпилировать знову:

/code/eget/all/pam$ make gcc pamexample.c -o pamexample -lpam -lpam_misc pauls@voltaire: