GCC (informatika)
From Wikipedia, the free encyclopedia
Remove ads
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.
Remove ads
Történelmi áttekintés
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

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:
- freescale 68HC11
- A29K
- C6x
- CR16
- D30V
- DSP16xx
- ETRAX CRIS
- FR-30
- FR-V
- ROMP
- Intel i960
- IP2000
- M32R
- M·CORE
- MIL-STD-1750A
- MMIX
- MN10200
- MN10300
- Motorola 88000
- NS32K
- RL78
- Stormy16
- V850
- Xtensa
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]
Remove ads
Kiadási stratégia

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
További információk
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads