Ero sivun ”Pkg-config” versioiden välillä
Siirry navigaatioon
Siirry hakuun
Päivitystä |
viimeiset fiksaukset |
||
| (4 välissä olevaa versiota samalta käyttäjältä ei näytetä) | |||
| Rivi 5: | Rivi 5: | ||
| kuva = | | kuva = | ||
| kuvateksti = | | kuvateksti = | ||
| tekijä = | | tekijä = Havoc Pennington | ||
| kehittäjä = | | kehittäjä = FreeDesktop.org-projekti | ||
| moottori = | | moottori = | ||
| ensijulkaisu = | | ensijulkaisu = | ||
| Rivi 13: | Rivi 13: | ||
| kehitysversio = | | kehitysversio = | ||
| kehityspvm = | | kehityspvm = | ||
| ohjelmoitu = | | ohjelmoitu = [[C]], vaatii [[GLib]]in. | ||
| käyttöliittymä = | | käyttöliittymä = Komentorivi (CLI) | ||
| tyyppi = | | tyyppi = Käännösasetusten hallintatyökalu, Metatietojärjestelmä | ||
| lisenssi = [[GPLv2+]] | | lisenssi = [[GPLv2+]] | ||
| kotisivu = https://pkgconfig.freedesktop.org/wiki/ pkgconfig.freedesktop.org] | | kotisivu = [https://pkgconfig.freedesktop.org/wiki/ pkgconfig.freedesktop.org] | ||
| lähdekoodi = | | lähdekoodi = [https://gitlab.freedesktop.org/pkg-config/pkg-config gitlab.freedesktop.org/pkg-config/pkg-config] | ||
}} | }} | ||
'''Pkg-config''' on kehitystyökalu, jota käytetään ohjelmiston kääntämiseen. Sen päätehtävä on helpottaa ohjelmointikirjastojen käyttöönottoa tarjoamalla automaattisesti oikeat kääntäjä- ja linkkeriasetukset (''--cflags'' ja ''--libs'') rakennusjärjestelmille (kuten [[Make]], [[Autotools]], [[Meson]] jne.). | '''Pkg-config''' on kehitystyökalu, jota käytetään ohjelmiston kääntämiseen. Sen päätehtävä on helpottaa ohjelmointikirjastojen käyttöönottoa tarjoamalla automaattisesti oikeat kääntäjä- ja linkkeriasetukset (''--cflags'' ja ''--libs'') rakennusjärjestelmille (kuten [[Make]], [[Autotools]], [[Meson]] jne.). Vaatii toimiakseen [[GLib]]-kirjaston. | ||
Alkuperäinen projekti ylläpidetään freedesktop.org-sivustolla, mutta monissa nykyaikaisissa Linux- ja BSD-jakeluissa (esim. Arch, Fedora, uudemmat | Alkuperäinen projekti ylläpidetään freedesktop.org-sivustolla, mutta monissa nykyaikaisissa Linux- ja BSD-jakeluissa (esim. [[Arch]], [[Fedora]], uudemmat [[Debian]]it) on siirrytty käyttämään yhteensopivaa, mutta tehokkaampaa [[pkgconf]]-toteutusta, joka toimii samalla komentorivillä. | ||
{{Huomautus|Haettavat hakemistot voidaan usein määritellä uudelleen käyttämällä ympäristömuuttujaa, tyypillisesti ''PKG_CONFIG_PATH''.}} | |||
== Toimintaperiaate == | == Toimintaperiaate == | ||
| Rivi 35: | Rivi 37: | ||
== Käyttö == | == Käyttö == | ||
Tyypillinen käyttötarkoitus on saada kääntäjävalitsimet GCC:lle jonkin kirjaston käyttämistä varten: | Tyypillinen käyttötarkoitus on saada kääntäjävalitsimet [[GCC]]:lle jonkin kirjaston käyttämistä varten: | ||
pkg-config <toiminnot ja valitsimet> <kirjasto>[<versio>] | pkg-config <toiminnot ja valitsimet> <kirjasto>[<versio>] | ||
| Rivi 57: | Rivi 59: | ||
|} | |} | ||
== Vaihtoehdot ja nykytilanne == | |||
Vaikka pkg-config on standardi, se on alkanut korvautua moderneissa järjestelmissä sen uudelleenkirjoitetulla versiolla: | |||
* [[Pkgconf]]-vaihtoehto: Osa Linux- ja BSD-jakeluista (kuten Arch Linux, Fedora, Alpine) on siirtynyt käyttämään pkgconf-nimistä vaihtoehtoista toteutusta. | |||
* Syyt muutokseen: Pkgconf ei tarvitse GLib-kirjastoa toimiakseen, on arkkitehtuuriltaan kevyempi ja tarjoaa paremman suorituskyvyn sekä kehittyneemmän riippuvuuksien ratkaisun. | |||
* Yhteensopivuus: Käyttäjän kannalta komento on sama (pkg-config), mutta taustalla pyörii tehokkaampi pkgconf-ohjelma. | |||
[[Luokka:Kehitystyökalut]] | [[Luokka:Kehitystyökalut]] | ||