GCC (informatika)

A GCC a GNU Compiler Collection rövidítése.

GNU Compiler Collection

FejlesztőThe GNU Project
Első kiadás1987-05-23[1]
Legfrissebb stabil kiadás13.2 (stabil verzió, 2023. július 27.)[2]
Legfrissebb fejlesztői kiadás8.0 stage 1 (2017. április 20.)[3] +/-
Programozási nyelvC++, eredetileg C
Operációs rendszerplatformfüggetlen
PlatformGNU
Állapotstabil
Kategóriafordítóprogram
LicencGPL-3+, LGPL-3+, FDL-1.3+
A GNU Compiler Collection weboldala

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

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

  • AArch64
  • andes (nds32)
  • arc
  • ARM
  • AVR
  • Blackfin
  • c4x
  • C6X
  • CR16
  • CRIS
  • Epiphany
  • fr30
  • h8300
  • i386 (i486, i586, i686, i786)
  • m32c
  • m32r
  • m68hc11 (m68hc12)
  • m68k
  • mcore
  • MeP
  • MicroBlace
  • mips (mipsel, mips64, mips64el)
  • MMIX
  • mn10300
  • msp430
  • pa
  • pdp11
  • riscv
  • rs6000 (powerpc, powerpcle)
  • rx
  • sh
  • sparc (sparclite, sparc64)
  • tilegx
  • tilepro
  • v850
  • vax
  • xtensa
  • z/Architecture (S/390)[5]

Kiadási stratégia

GCC 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.[6]

Források

További információk