GNU Compiler Collection
GNU Compiler Collection ( GCC ) е оптимизиращ компилатор, произведен от GNU Project, поддържащ различни езици за програмиране, хардуерни архитектури и операционни системи . Фондацията за свободен софтуер (FSF) разпространява GCC като свободен софтуер под GNU General Public License (GNU GPL). GCC е ключов компонент на GNU toolchain и стандартен компилатор за повечето проекти, свързани с GNU и ядрото на Linux . С приблизително 15 милиона реда код през 2019 г. GCC е един от най-големите безплатни програми, които съществуват. Той изигра важна роля в растежа на свободния софтуер като инструмент и като пример.
Когато беше пуснат за първи път през 1987 г. от Ричард Столман, GCC 1.0 беше наречен GNU C компилатор, тъй като работеше само с езика за програмиране C. Той беше разширен за компилиране на C++ през декември същата година. По-късно предните части бяха разработени за Objective-C, Objective-C++, Fortran, Ada, D и Go, заедно с други. [1] Спецификациите на OpenMP и OpenACC също се поддържат в компилаторите на C и C++. [2] [3]
GCC е пренесен на повече платформи и архитектури на набор от инструкции, отколкото всеки друг компилатор, и е широко разпостранен като инструмент при разработването както на безплатен, така и на собствен софтуер . GCC се предлага и за много вградени системи, включително чипове, базирани на ARM и Power ISA .
Освен че е официален компилатор на операционната система GNU, GCC е приет като стандартен компилатор от много други модерни Unix-подобни компютърни операционни системи, включително повечето дистрибуции на Linux . Повечето операционни системи от семейство BSD също преминаха към GCC скоро след пускането му, въпреки че оттогава FreeBSD, OpenBSD и Apple macOS преминаха към компилатора Clang [4] до голяма степен поради причини за лицензиране. [5] [6] [7] GCC може също да компилира код за Windows, Android, iOS, Solaris, HP-UX, AIX и DOS. [8]
- ↑ Programming Languages Supported by GCC // GNU Project. Посетен на 2014-06-23.
- ↑ GCC 6 Release Series — Changes, New Features, and Fixes - GNU Project // gcc.gnu.org.
- ↑ OpenACC - GCC Wiki // gcc.gnu.org.
- ↑ The LLVM Compiler Infrastructure Project // llvm.org.
- ↑ Apple's GPLv3 purge // meta.ath0.com. Посетен на 2021-01-12. (на американски английски)
- ↑ Linnemann, Reid. Why Clang // Посетен на 2021-01-12.
- ↑ August 29, 2007: FreeBSD Foundation Newsletter, August 29, 2007 // Посетен на 2021-01-12.
- ↑ Installing GCC: Binaries - GNU Project - Free Software Foundation (FSF) // gcc.gnu.org. Посетен на 2021-01-12.