pkg-config
Тип | Інструмент розробки |
---|---|
Автори | James Henstridge; Tim Janik; Havoc Pennington; Scott James Remnant |
Розробник | Tollef Fog Heen |
Перший випуск | 15 вересня 2003 |
Стабільний випуск | 0.29.2 (20 березня 2017 ) |
Версії | 0.29.2 (20 березня 2017)[1] |
Операційна система | Unix-подібні; Windows; macOS |
Мова програмування | C |
Ліцензія | GNU GPL |
Розширення файлу | .pc |
Репозиторій | anongit.freedesktop.org/pkg-config |
Вебсайт | freedesktop.org/wiki/Software/pkg-config/ |
pkg-config — допоміжний інструмент для компіляції програмного забезпечення. Зберігає метадані встановлених бібліотек у файлах з розширенням .pс
, надаючи уніфікований спосіб їх інтеграції при складанні програми[2]. Початково був створений для Linux, але тепер доступний на Windows та macOS.
Перший доступний реліз датується 2003 роком[3]. Спершу був написаний James Henstridge мовою shell для Linux . Згодом Havoc Pennington переробив pkg-config на мові С. Надалі проект отримав розповсюдження на інші платформи.
Зазвичай при встановлені бібліотеки через менеджер пакунків(dnf, apt тощо) автоматично створюється відповідний .pc
файл. Він містить в собі назву пакунку, версію, стислий опис та потрібні директорії для його складання, в тому числі директорії залежностей. Існує перелік директорій, в яких ці файли мають зберігатися, вони описані офіційною документацією pkg-config[2].
Приклад .pc
файлу для libpng:
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${exec_prefix}/include
Name: libpng
Description: Loads and saves PNG files
Version: 1.2.8
Libs: -L${libdir} -lpng12 -lz
Cflags: -I${includedir}/libpng12
Приклад складання програми з gcc та pkg-config:
$ gcc -o test test.c $(pkg-config --libs --cflags libpng)
pkg-config також підтримується та використовується в сценаріях складання CMake.
- ↑ Index of /releases
- ↑ а б pkg-config(1) - Linux man page.
- ↑ pkg-config. www.freedesktop.org. Процитовано 2 січня 2024.