Pkg-config
Author
Albert Florespkg-config je počítačový program, který poskytuje jednotné rozhraní pro získání informací o knihovnách nainstalovaných v systému pro účely překladu softwaru ze zdrojových kódů. Umožňuje, aby programátoři a instalační skripty mohli pracovat bez explicitních znalostí, kde jsou umístěny jednotlivé knihovny. pkg-config byl původně navržený pro Linux, ale je dostupný i pro různé varianty BSD, Microsoft Windows, Mac OS X a Solaris.
Příkaz vypisuje informace o nainstalovaných knihovnách, např.: * Parametry pro překladač jazyka C nebo C++ * Parametry pro linker * Verze příslušného balíčku
První implementace byla napsaná v shellu, později byl program přepsán do jazyka C s použitím knihovny GLib.
Použití
Při instalaci knihovny (ať automatickém pomocí RPM, deb nebo jiného binárního balíčkovacího systému, nebo překladem ze zdrojových textů), je do vytvořen soubor . pc a nainstalován do adresáře s dalšími . +morepc soubory (konkrétní adresář závisí na systému a je uveden v manuálové stránce pkg-config). Soubor obsahuje několik položek.
Jednotlivé položky obsahují seznam knihoven, které programy používající balíček potřebují při překladu, umístění hlavičkových souborů, informace o verzi a popis.
Příklad .pc souboru pro 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
Tento soubor ukazuje, jak libpng informuje, že se jeho knihovny nacházejí v /usr/local/lib a hlavičkové soubory v /usr/local/include, že jméno knihovny je libpng, a verze 1. 2. +more8. Také uvádí příznaky pro linker potřebné při sestavování programů, které používají tuto knihovnu.
Příklad použití pkg-config při překladu:
$ gcc -o test test.c $(pkg-config --libs --cflags libpng)
Odkazy
Reference
Externí odkazy
[url=://man. openbsd. +moreorg[/url]url=http://pkg-config. freedesktop. org/]Domovská stránka pkg-config na freedesktop. org[/url] * [url=https://linux. die. net/man/1/pkg-config]Manuálová stránka linuxové verze pkg-config na die. net[/url] * [url=http://man. openbsd. org/pkg-config. 1]Manuálová stránka OpenBSD verze pkg-config na[/url].
Kategorie:Programové knihovny Kategorie:Software pro Linux Kategorie:Automatizace sestavování softwaru Kategorie:Programovací software Kategorie:Software pro Unix