GNU Compiler Collection

Kompilator yang dikembangkan oleh proyek GNU

GNU Compiler Collection (disingkat GCC) adalah koleksi kompilator yang dikembangkan oleh proyek GNU. Pada awal rilisnya, GCC merupakan singkatan dari GNU C Compiler karena hanya bisa melakukan kompilasi terhadap bahasa C. Namun, pada bulan Desember 1987, kompilator GCC untuk C++ dirilis.

GNU Compiler Collection
GCC 10.2 yang sedang mengompilasi kode sumbernya sendiri
Tipepaket GNU
Versi pertama23 Mei 1987; 37 tahun lalu (1987-05-23)[1]
Versi stabil
14.1 (7 Mei 2024)
GenreKompilator
LisensiGPLv3+ dengan GCC Runtime Library Exception[2]
Bagian dariGNU toolchain
Karakteristik teknis
Sistem operasiLintas platform
PlatformLintas platform
Ukuran~15 juta LOC[3]
Bahasa pemrogramanC++ dan C
Informasi pengembang
PembuatRichard Stallman
PengembangProyek GNU
Informasi tambahan
Situs webgcc.gnu.org
Stack ExchangeEtiqueta
Pelacakan kesalahanLaman pelacakan
Free Software DirectoryGcc
Framalibregnu-compiler-collection
Sunting di Wikidata Sunting di Wikidata • Sunting kotak info • L • B
Info templat
Bantuan penggunaan templat ini

Beberapa bagian depan untuk bahasa C++, Ada, Fortran, Go, dan D juga dikembangkan beberapa tahun setelahnya.[6][7] Sementara hasil bagian belakangnya dapat dijalankan di berbagai arsitektur seperti x86-64, x86, i386, ARM, SPARC, dan MIPS.[8]

Adopsi sunting

GCC telah diadopsi sebagai kompilator standar oleh banyak distro Linux dan sistem operasi Unix lainnya seperti OpenIndiana.[9] Kebanyakan sistem BSD juga menggunakan GCC, meskipun FreeBSD dan OpenBSD mengganti kompilatornya dengan Clang.[10][11] macOS juga berencana menggunakan Clang setelah berkontribusi banyak pada LLVM, bagian belakang Clang, sementara para pengembangnya untuk macOS mulai berdiskusi tentang kelayakan dukungan GCC.[12][13]

GCC tersedia di Windows melalui MinGW maupun TDM-GCC.[14][15] GCC bisa melakukan kompilasi kode ke Android dengan Android NDK.[16]

Lisensi sunting

GCC dilisensikan dibawah Lisensi Publik Umum GNU, dengan pengecualian bahwa seseorang dapat mendistribusikan perangkat lunaknya yang dikompilasi dengan GCC dengan hak ciptanya sendiri, meskipun ini termasuk membawa berkas-berkas header dan runtime milik GCC yang dibutuhkan oleh perangkat lunaknya. Pengecualian ini disebut dengan "GCC Runtime Library Exception".[17]

Referensi sunting

  1. ^ "GCC Releases". GNU Project. Diarsipkan dari versi asli tanggal 2023-06-04. Diakses tanggal 2020-07-24. 
  2. ^ "GCC Runtime Library Exception". Diarsipkan dari versi asli tanggal 2023-03-31. Diakses tanggal 2020-07-24. 
  3. ^ Víctor Rodríguez (2019-10-01). "Cutting Edge Toolchain (Latest Features in GCC/GLIBC)". youtube.com. Linux Foundation. Diarsipkan dari versi asli tanggal 2023-03-27. Diakses tanggal 2021-01-19. 
  4. ^ "GCC 11 Release Series". gcc.gnu.org. Diarsipkan dari versi asli tanggal 2023-03-21. Diakses tanggal 2021-10-10. 
  5. ^ GNU Project (2020-10-15). "GCC Coding Conventions: C and C++ Language Conventions". gcc.gnu.org. Free Software Foundation. Diarsipkan dari versi asli tanggal 2023-05-28. Diakses tanggal 2021-01-08. 
  6. ^ "G++ and GCC (Using the GNU Compiler Collection (GCC))". gcc.gnu.org. Diarsipkan dari versi asli tanggal 2023-05-28. Diakses tanggal 2020-08-27. 
  7. ^ "GNU Compiler Collection - ArchWiki". wiki.archlinux.org. Diarsipkan dari versi asli tanggal 2021-02-27. Diakses tanggal 2020-08-27. 
  8. ^ "Host/Target specific installation notes for GCC - GNU Project - Free Software Foundation (FSF)". gcc.gnu.org. Diarsipkan dari versi asli tanggal 2018-04-22. Diakses tanggal 2020-08-27. 
  9. ^ "illumos GCC - OpenIndiana - OpenIndiana Wiki". wiki.openindiana.org. Diarsipkan dari versi asli tanggal 2020-04-29. Diakses tanggal 2020-08-27. 
  10. ^ "FreeBSD 13 Is Preparing To Finally Retire GCC 4.2 - Phoronix". www.phoronix.com. Diarsipkan dari versi asli tanggal 2022-05-18. Diakses tanggal 2020-08-27. 
  11. ^ "OpenBSD Switches To Clang Compiler For i386/AMD64 - Phoronix". www.phoronix.com. Diarsipkan dari versi asli tanggal 2022-06-15. Diakses tanggal 2020-08-27. 
  12. ^ "Apple's Compiler Team Starts Upstreaming Changes For macOS 11 - Phoronix". www.phoronix.com. Diarsipkan dari versi asli tanggal 2022-04-07. Diakses tanggal 2020-08-27. 
  13. ^ Gallager, Eric (Mon Jun 22 22:51:54 GMT 2020). "WWDC thread: support for darwin/macOS going forward". Diarsipkan dari versi asli tanggal 2022-04-07. Diakses tanggal 2020-08-27. 
  14. ^ "MinGW | Minimalist GNU for Windows". mingw.org. Diarsipkan dari versi asli tanggal 2018-07-20. Diakses tanggal 2020-08-27. 
  15. ^ jmeubank/tdm-gcc, 2020-08-26, diarsipkan dari versi asli tanggal 2023-03-15, diakses tanggal 2020-08-27 
  16. ^ "Android NDK". Android Developers. Diarsipkan dari versi asli tanggal 2023-06-28. Diakses tanggal 2020-08-27. 
  17. ^ "GCC Runtime Library Exception". GNU. 2009-03-31. Diarsipkan dari versi asli tanggal 2023-06-23. Diakses tanggal 2020-10-28. 

Pranala luar sunting