110 likes | 230 Views
GNU-ohjelmointityökalut. Jussi Raunio TI09OHJ 25.11.2011. GNU. Richard Stallmanin vuonna 1983 käynnistämä projekti Tavoitteena oli kehittää täysin vapaa käyttöjärjestelmä niin työkaluiltaan kuin ytimeltään
E N D
GNU-ohjelmointityökalut Jussi Raunio TI09OHJ 25.11.2011
GNU • Richard Stallmanin vuonna 1983 käynnistämä projekti • Tavoitteena oli kehittää täysin vapaa käyttöjärjestelmä niin työkaluiltaan kuin ytimeltään • Vuonna 1985 Stallmanin perustama FSF (Free Software Fondation) hallinnoi projektia edelleen
GNU • GNU tarjoaa hyvän alustan sovelluskehittäjille ja ison joukon työkaluja • Nykyajan vapaan lähdekoodin ohjelmien kehitys tapahtuu pääsääntöisesti GNU:n työkaluilla • Osa GNU-työkaluista on levinnyt myös kaupallisten ja suljetun lähdekoodin ohjelmistojen kehityskäyttöön
GNU Make • Suorittaa tarvittavat komennot isojen ohjelmistojen osien kääntämiseksi • Pitää kirjaa tiedostoriippuvuuksista ja muuttuneista tiedostoista • Makea käytetään pääsääntöisesti C-ohjelmien kanssa, mutta sitä voidaan käyttää myös muiden ohjelmien kääntämiseen • Makea voidaan käyttää mihin tahansa tiedostojen automatisoituun päivittämiseen
Makefile • Make käyttää ohjaustiedostonaan Makefileä • Sisältää suoritusrutiinit ja tiedot tiedostojen riippuvuuksista • Asetuksia kutsutaan säännöiksi, jotka määrittelevät miten mitäkin tiedostoa pitää käsitellä • Nykyisin Makefilejä ei luoda suoraan käsin, vaan käytetään järjestelmäriippumatonta tapaa generoida niitä
GNU CompilerCollection • GCC on kokoelma ohjelmointikielien kääntäjiä • Kehitettiin GNU-projektin yhteydessä, koska avointa kääntäjää ei ollut • Nimi oli tuolloin GNU C Compiler, koska se tuki vain C-kieltä • GCC:n kieli- ja arkkitehtuurituki on laajentunut niin paljon, että siitä on tullut yksi monipuolisimmista kääntäjistä
GNU BinaryUtils • GNU sisältää binaarityökalujen kokoelman (binutils), jolla voidaan katsella ja muokata lähdekoodista luotuja objektitiedostoja • Alun perin kokoelma sisälsi vain hyvin pieniä työkaluja, mutta siihen sisällettiin GNU Assembler (GAS) ja GNU Linker (GLD) • Käyttää taustallaan BinaryFileDescription -kirjastoa, joka hoitaa suurimman osan binaaritiedostojen käsittelystä
GNU Debugger • Virhejäljitin eli debuggeri on työkalu, jolla voidaan ajaa suoritettavia ohjelmatiedostoja hallitussa ympäristössä • Alustariippumaton GNU:nstandardidebuggeri, joka tukee monia ohjelmointikieliä • Ei sisällä lainkaan graafista käyttöliittymää • Monet IDEt käyttävät GDB:tä taustalla
GNU Emacs • Richard Stallmanin kirjoittama tekstieditori • Sisältää täydellisen C:llä kirjoitetun Lisp-tulkin • Julkaistiin vuonna 1985 ollen ensimmäinen GNU-projektin nimissä julkaistu ohjelma • Myöhemmin siirrettiin Unix-ympäristöön • Laajan toiminnallisuuden myötä tuli de facto varsin nopeasti
GNU libc • GNU:n C-standardikirjasto • Toteutettiin osaksi GNU-käyttöjärjestelmää • Ensimmäinen versio kirjoitettiin 1980-luvulla • Helmikuussa 1988 glibc sisälsi täydellisen ANSI C -toteutuksen • Myöhemmin siihen lisättiin mm. tuki POSIX-standardille ja muille ANSI C -versioille
GNU Build System • Autotools on kokoelma ohjelmointityökaluja, jotka auttavat tekemään lähdekoodista helpommin siirrettävää • Osa GNU Toolchainia • Käytetään monissa vapaan lähdekoodin jakelupaketeissa • Koostuu Autoconf-, Automake- ja Libtool -ohjelmista