GNU Compiler Collection

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
GNU Compiler Collection
GCC 10.2 yang sedang mengompilasi kode sumbernya sendiri
Tipepaket GNU
Versi pertama23 Mei 1987; 36 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

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.

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

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

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

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

Pranala luar