GCC (informatika)
| GNU Compiler Collection | |
| Fejlesztő | The GNU Project |
| Első kiadás | 1987-05-23[1] |
| Legfrissebb stabil kiadás | 16.1 (stabil verzió, 2026. április 30.)[2] |
| Legfrissebb fejlesztői kiadás | 8.0 stage 1 (2017. április 20.)[3] +/- |
| Programozási nyelv | C++, eredetileg C |
| Operációs rendszer | platformfüggetlen |
| Platform | GNU |
| Állapot | stabil |
| Kategória | fordítóprogram |
| Licenc | GPL-3+, LGPL-3+, FDL-1.3+ |
| Kódtár | https://gcc.gnu.org/git/gcc.git |
| A GNU Compiler Collection weboldala | |
A GCC a GNU Compiler Collection rövidítése.
Szabadon elérhető C, C++, Pascal, Objective-C, Java, Fortran és Ada fordító, elsősorban Linux és BSD – tehát POSIX – rendszerekre, de létezik Microsoft Windows-ra készített változata is (MinGW -n keresztül), rengeteg CPU és architektúra támogatott, amire a GCC tud fordítani.
Eredetileg a gcc GNU C Compiler-t jelentett, és csak is kizárólag C programozási nyelvet tudott kezelni. A gcc 1.0-t 1987-ben adták ki, majd a fordítót kiterjesztették arra, hogy C++-t is képes legyen lefordítani, az év decemberében.[1] Később front end-et fejlesztettek többek közt a következőkhöz: Objective-C, C++, Fortran, Java (Gcj), Ada (Gnat), és Go.[4]
A Free Software Foundation (FSF) adja ki a GCC-t GNU General Public License (GNU GPL) alatt. A GCC fontos szerepet játszott a szabad szoftver növekedésében, mind eszközként, mind példaként.
Történelmi áttekintés
[szerkesztés | forrásszöveg szerkesztése]Eredetileg GNU C Compiler-ként indult, és ennek a projektnek köszönheti a fejlődését sok nyílt forrású operációs rendszer, többek között a Linux és a nyílt BSD-k is.
Támogatott architektúrák
[szerkesztés | forrásszöveg szerkesztése]
Az elsődlegesen támogatott (és legjobban tesztelt) processzorcsaládok a 64- és 32 bites ARM, 64- és 32 bites x86-64 és x86 és a 64 bites PowerPC és SPARC.[5]
A GCC cél-processzorcsaládok a 11.1-es verziótól kezdve a következők:[6]
A standard kiadásban támogatott kevésbé ismert célprocesszorok a következők voltak:
További processzorokat támogattak az FSF-verziótól elkülönülten karbantartott GCC-verziók:
- Cortus APS3
- ARC
- Atmel AVR32
- C166 és C167
- D10V
- EISC
- eSi-RISC
- Hexagon[8]
- LatticeMico32
- LatticeMico8
- MeP
- MicroBlaze
- Motorola 6809
- MSP430
- NEC SX architecture[9]
- Nios II és Nios
- OpenRISC
- PDP–10
- PIC24/dsPIC
- PIC32
- Propeller
- Saturn (HP48XGCC)
- IBM System/370
- TIGCC (m68k változat)
- TMS9900
- TriCore
- Z8000
- ZPU
A GCJ Java compiler/fordítóprogram vagy egy natív gépi nyelvi architektúrát, vagy a Java virtuális gép bájtkódját célozhatja meg.[10] Amikor a GCC-t újracélzás (retargeting) során egy új platformhoz adaptálják, gyakran használják a bootstrapping technikát (amellyel önfordító fordítót állítanak elő). A Motorola 68000, Zilog Z80 és más processzorokat is gyakran megcéloztak a különböző Texas Instruments, Hewlett Packard, Sharp és Casio programozható grafikus számológépekhez fejlesztett GCC verziókban.[11]
Kiadási stratégia
[szerkesztés | forrásszöveg szerkesztése]
Az új kiadási menetrend során általában három fejlesztési állapotot hoznak létre, mielőtt egy branchot létrehoznak.
A nagyobb változtatások során adnak branchot a projekthez, melyek lehetnek:
- új C++ parser esetén
- új memória allokációs séma esetén
- új optimalizációs lépés
Minden branch után új kiadási menetrend következik, valamint jellemzően két havonta bug-fix foltot is kiadnak az eredeti kiadáshoz.[12]
Források
[szerkesztés | forrásszöveg szerkesztése]- 1 2 "GCC Releases - GNU Project - Free Software Foundation (FSF)". www.gnu.org (angol nyelven). Hozzáférés: 2017. augusztus 24..
- ↑ Richard Biener (2026. április 30.). "GCC 16.1 Released" (angol nyelven). Hozzáférés: 2026. április 30..
- ↑ "GCC Development Plan - GNU Project - Free Software Foundation (FSF)". www.gnu.org (angol nyelven). Hozzáférés: 2017. augusztus 24..
- ↑ "Programming Languages Supported by GCC". GNU Project. Hozzáférés: 2011. november 25..
- ↑ "GCC 12 Release Criteria". gcc.gnu.org. 2022. október 26. 2023. január 27. dátummal az eredetiből archiválva. Hozzáférés: 2023. január 27..
- ↑ "Option Summary (Using the GNU Compiler Collection (GCC))". gcc.gnu.org. 2023. január 18. dátummal az eredetiből archiválva. Hozzáférés: 2020. augusztus 21..
- ↑ "Links and Selected Readings - GNU Project - Free Software Foundation (FSF)". gcc.gnu.org (angol nyelven). Hozzáférés: 2017. augusztus 24..
- ↑ "Hexagon Project Wiki". 2012. március 23. dátummal az eredeti címről archiválva. Hozzáférés: 2011. május 19..
- ↑ "Google Code Archive - Long-term storage for Google Code Project Hosting". code.google.com. 2022. szeptember 25. dátummal az eredetiből archiválva. Hozzáférés: 2021. szeptember 24..
- ↑ "The GNU Compiler for the Java Programming Language". május 9, 2007 dátummal az eredeti címről archiválva. Hozzáférés: április 22, 2010.
- ↑ en:Graphing calculator#Programming
- ↑ "GCC Development Plan - GNU Project - Free Software Foundation (FSF)". www.gnu.org (angol nyelven). Hozzáférés: 2017. augusztus 24..