GNU Compiler Collection

Kompilator yang dikembangkan oleh proyek GNU
(Dialihkan dari Gcc)

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
Tipekompilator
Versi pertama23 Mei 1987; 36 tahun lalu (1987-05-23)[1]
Versi stabil
13.2 (27 Juli 2023)
GenreKompilator
LisensiGPLv3+ dengan GCC Runtime Library Exception[2]
Bagian dariGNU toolchain (en)
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 • 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