pkg-config — допоміжний інструмент для компіляції програмного забезпечення. Зберігає метадані встановлених бібліотек у файлах з розширенням .pс
, надаючи уніфікований спосіб їх інтеграції при складанні програми. Початково був створений для Linux, але тепер доступний на Windows та macOS.
Тип | Інструмент розробки |
---|---|
Автори | 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/ |
Історія
Перший доступний реліз датується 2003 роком. Спершу був написаний James Henstridge мовою shell для Linux . Згодом Havoc Pennington переробив pkg-config на мові С. Надалі проект отримав розповсюдження на інші платформи.
Приклади використання
Зазвичай при встановлені бібліотеки через менеджер пакунків(dnf, apt тощо) автоматично створюється відповідний .pc
файл. Він містить в собі назву пакунку, версію, стислий опис та потрібні директорії для його складання, в тому числі директорії залежностей. Існує перелік директорій, в яких ці файли мають зберігатися, вони описані офіційною документацією pkg-config.
Приклад .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)
CMake
pkg-config також підтримується та використовується в сценаріях складання CMake.
Джерела
- Index of /releases
- pkg-config(1) - Linux man page.
- pkg-config. www.freedesktop.org. Процитовано 2 січня 2024.
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
pkg config dopomizhnij instrument dlya kompilyaciyi programnogo zabezpechennya Zberigaye metadani vstanovlenih bibliotek u fajlah z rozshirennyam ps nadayuchi unifikovanij sposib yih integraciyi pri skladanni programi Pochatkovo buv stvorenij dlya Linux ale teper dostupnij na Windows ta macOS pkg configTipInstrument rozrobkiAvtoriJames Henstridge Tim Janik Havoc Pennington Scott James RemnantRozrobnikTollef Fog HeenPershij vipusk15 veresnya 2003 20 rokiv tomu 2003 09 15 Stabilnij vipusk0 29 2 20 bereznya 2017 7 rokiv tomu 2017 03 20 Versiyi0 29 2 20 bereznya 2017 1 Operacijna sistemaUnix podibni Windows macOSMova programuvannyaCLicenziyaGNU GPLRozshirennya fajlu pcRepozitorijanongit freedesktop org pkg configVebsajtfreedesktop org wiki Software pkg config IstoriyaPershij dostupnij reliz datuyetsya 2003 rokom Spershu buv napisanij James Henstridge movoyu shell dlya Linux Zgodom Havoc Pennington pererobiv pkg config na movi S Nadali proekt otrimav rozpovsyudzhennya na inshi platformi Prikladi vikoristannyaZazvichaj pri vstanovleni biblioteki cherez menedzher pakunkiv dnf apt tosho avtomatichno stvoryuyetsya vidpovidnij pc fajl Vin mistit v sobi nazvu pakunku versiyu stislij opis ta potribni direktoriyi dlya jogo skladannya v tomu chisli direktoriyi zalezhnostej Isnuye perelik direktorij v yakih ci fajli mayut zberigatisya voni opisani oficijnoyu dokumentaciyeyu pkg config Priklad pc fajlu dlya 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 Priklad skladannya programi z gcc ta pkg config gcc o test test c pkg config libs cflags libpng CMakepkg config takozh pidtrimuyetsya ta vikoristovuyetsya v scenariyah skladannya CMake DzherelaIndex of releases pkg config 1 Linux man page pkg config www freedesktop org Procitovano 2 sichnya 2024