Spec-Zone.ru › GCC 13

1 Языки программирования, поддерживаемые GCC

GCC означает «GNU Compiler Collection». GCC — это интегрированное распределение компиляторов для нескольких основных языков программирования. В настоящее время эти языки включают C, C++, Objective-C, Objective-C++, Fortran, Ada, D и Go.

Аббревиатура GCC имеет несколько значений в общем использовании. Текущее официальное значение — «GNU Compiler Collection», которое обозначает весь набор инструментов. Исторически это значение означало «GNU C Compiler», и это использование всё ещё распространено, когда делается акцент на компиляции программ C. Наконец, это имя также используется при разговоре о независимом от языка компоненте GCC: коде, используемом компиляторами для всех поддерживаемых языков.

Компонент GCC, независимый от языка, включает в себя большинство оптимизаторов, а также «задние части», которые генерируют машинный код для различных процессоров.

Часть компилятора, специфичная для определенного языка, называется «передней частью». Помимо передних частей, которые являются интегрированными компонентами GCC, существуют и другие отдельные передние части. Они поддерживают такие языки, как Mercury и COBOL. Для их использования они должны быть объединены с основным GCC.

Большинство компиляторов для языков, отличных от C, имеют свои собственные названия. Компилятор C++ — это G++, компилятор Ada — GNAT и так далее. Когда мы говорим о компиляции одного из этих языков, мы можем ссылаться на этот компилятор по его собственному имени или как на GCC. Оба варианта правильны.

Исторически компиляторы для многих языков, включая C++ и Fortran, реализовывались как «препроцессоры», которые генерируют другой язык высокого уровня, например, C. Ни один из компиляторов, включённых в GCC, не реализован таким образом; все они генерируют машинный код напрямую. Такой препроцессор не следует путать с препроцессором C, который является неотъемлемой частью языков C, C++, Objective-C и Objective-C++.

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gcc/G_002b_002b-and-GCC.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API