Muokataan sivua GCC

Siirry navigaatioon Siirry hakuun
Varoitus: Et ole kirjautunut sisään. IP-osoitteesi näkyy julkisesti kaikille, jos muokkaat. Jos kirjaudut sisään tai luot tunnuksen, muokkauksesi yhdistetään käyttäjänimeesi ja saat paremman käyttökokemuksen.

Kumoaminen voidaan suorittaa. Varmista alla olevasta vertailusta, että haluat saada aikaan tämän lopputuloksen, ja sen jälkeen julkaise alla näkyvät muutokset.

Nykyinen versio Oma tekstisi
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äännettiin 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äännetään sillä.


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


==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. 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>
*-O: Asettaa optimointitason (0-3, 0 ei optimointia). Yleensä kannattaa käyttää muotoa <tt>-O2</tt> tai <tt>-O3</tt>
*-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ä.
*-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 kohdista, joita pidetään huonona tyylinä ja jotka on helppo välttää.
*-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.
*-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ä.
*-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]]


==Aiheesta muualla==
==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:Komentorivin erikoisohjelmat]]
[[Luokka:Komentorivin erikoisohjelmat]]
[[pl:GNU Compiler Collection]]
Wikin materiaali on kaikkien vapaasti käytettävissä Creative Commons 3.0 - nimi mainittava -lisenssin alaisuudessa. TEKIJÄNOIKEUDEN ALAISEN MATERIAALIN KÄYTTÄMINEN ILMAN LUPAA ON EHDOTTOMASTI KIELLETTYÄ!

Muokataksesi tätä sivua vastaa alla olevaan kysymykseen (lisätietoja):

Peruuta Muokkausohjeet (avautuu uuteen ikkunaan)
Noudettu kohteesta ”https://www.linux.fi/wiki/GCC