Ero sivun ”GCC” versioiden välillä

Siirry navigaatioon Siirry hakuun
773 merkkiä lisätty ,  30. joulukuuta 2020
p
ei muokkausyhteenvetoa
p (Botti vaihtoi luokan Luokka:Ohjelmistokehitys)
pEi muokkausyhteenvetoa
(19 välissä olevaa versiota 13 käyttäjän tekeminä ei näytetä)
Rivi 1: Rivi 1:
GCC ([[GNU]] Compiler Collection) on [[GNU]]-projektin kääntäjäkokoelma, jolla voi kääntää ohjelmointikieliä [[C]], [[C plus plus|C++]] (CPP), Objective-C, Fortran, [[Java]] ja Ada. GCC sisältää myös näiden kielten kirjastot. GCC on saatavissa todella monille [http://gcc.gnu.org/install/specific.html alustoille], ja mm. Nokian älypuhelimista tunnetulle Symbian-käyttöjärjestelmälle valmistetut ohjelmat käännetään sillä.
'''GCC''' (GNU Compiler Collection) on [[GNU]]-projektin kääntäjäkokoelma, jolla voi kääntää ohjelmointikieliä [[C]], [[C plus plus|C++]] (CPP), Objective-C, Fortran, [[Java]] ja Ada. GCC sisältää myös näiden kielten kirjastot. GCC on saatavissa todella monille [http://gcc.gnu.org/install/specific.html alustoille], ja mm. Nokian älypuhelimista tunnetulle Symbian-käyttöjärjestelmälle valmistetut ohjelmat käännettiin sillä.


GCC:n versio 4.0.0 julkaistiin huhtikuun 20. päivänä 2005.
GCC:n versio 10 julkaistiin heinäkuun 23. päivänä 2020.


==Kääntäminen==
==Kääntäminen==
Rivi 10: Rivi 10:


Lippuja joita voi lisätä käännöskomentoon:
Lippuja joita voi lisätä käännöskomentoon:
*-O: Asettaa optimointitason (0-3, 0 ei optimointia). Yleensä kannattaa käyttää muotoa <tt>-O2</tt> tai <tt>-O3</tt>
*-O: Asettaa optimointitason (0-3, 0 ei optimointia. Muut optimointiasetukset selityksineen löytyvät  [http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html GCC:n ohjekirjasta]). Yleensä kannattaa käyttää muotoa <tt>-O2</tt>
*-l: Kirjaston linkittäminen, esim. <tt>-lsdl</tt> linkittäisi projektiin mukaan libsdl.so-kirjaston asetuksissa määritellystä paikasta
*-l: Kirjaston linkittäminen, esim. <tt>-lsdl</tt> linkittäisi projektiin mukaan libsdl.so-kirjaston asetuksissa määritellystä paikasta. [[pkg-config]] auttaa oikeiden kirjastovalitsinten löytämisessä.
*-W: Asettaa varoitustason, eli sen, mitkä varoitukset näytetään. Esimerkiksi <tt>-Wall</tt> näyttäisi kaikki mahdolliset varoitukset.
*-W: Asettaa varoitustason, eli sen, mitkä varoitukset näytetään. Esimerkiksi <tt>-Wall</tt> näyttäisi kaikki mahdolliset varoitukset kohdista, joita pidetään huonona tyylinä ja jotka on helppo välttää.
*-I: Lisää otsikkotiedostojen poluksi määritellyn. Esimerkiksi jos koodissa on #include <foo.h>, ja foo.h sijaitsee vaikka hakemistossa ~/headerit, käytetään lippua <tt>-I~/headerit</tt>
*-I: Lisää otsikkotiedostojen poluksi määritellyn. Esimerkiksi jos koodissa on #include <foo.h>, ja foo.h sijaitsee vaikka hakemistossa ~/headerit, käytetään lippua <tt>-I~/headerit</tt>
 
*-g: Lisää binääriin GNU-tyyliset debug-symbolit, olennainen esim [[Gdb]]:n ja [[Valgrind]]in kanssa.
*-pedantic: Antaa standardin vaatiman diagnostiikan vähäpätöisistäkin syntaksivirheistä.
*-o: Valitsee tiedoston joka tuotetaan.


==Katso myös==
==Katso myös==
*[[Distcc]]
*[[Distcc]]
*[[Make]]
*[[Make]]
*[[Cscope]]


== Linkkejä ==
==Aiheesta muualla==
* [http://gcc.gnu.org/ GCC:n kotisivu]
* [http://gcc.gnu.org/ GCC:n kotisivu]
* [http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html Täysi lista GCC:n optimointi-lipuista selityksineen englanniksi]
* [https://lwn.net/Articles/798913/ LWN.net: Comparing GCC and Clang security features]


[[Luokka:Kehitystyökalut]]
[[Luokka:Kehitystyökalut]]
[[Luokka:Komentorivi]]
[[Luokka:Komentorivin erikoisohjelmat]]
 
[[pl:GNU Compiler Collection]]
3 173

muokkausta

Navigointivalikko