1.1 О GNU Fortran
Компилятор GNU Fortran полностью поддерживает стандарты Fortran 77, 90 и 95, части стандартов Fortran 2003, 2008 и 2018, а также ряд расширений поставщиков. Цель разработки заключается в обеспечении следующих функций:
- Чтение программы пользователя, хранящейся в файле и содержащей инструкции, написанные на Fortran 77, Fortran 90, Fortran 95, Fortran 2003, Fortran 2008 или Fortran 2018. Этот файл содержит исходный код.
- Перевод программы пользователя в инструкции, которые компьютер может выполнять быстрее, чем время, затрачиваемое на сам перевод инструкций. Результатом компиляции программы является машинный код, код, разработанный для эффективного перевода и обработки машиной, такой как ваш компьютер. Люди обычно не так хороши в написании машинного кода, как в написании Fortran (или C++, Ada или Java), потому что при написании машинного кода легко допустить мелкие ошибки.
- Предоставление пользователю информации о причинах, по которым компилятор не может создать двоичный файл из исходного кода. Обычно это происходит в случае, если исходный код содержит ошибки. Стандарт Fortran 90 требует, чтобы компилятор мог указывать пользователю на ошибки. Неправильное использование языка приводит к сообщению об ошибке.
Компилятор также попытается диагностировать случаи, когда программа пользователя содержит корректное использование языка, но сообщает компьютеру выполнить сомнительные действия. Этот вид сообщения диагностики называется сообщением об ошибке.
- Предоставление необязательной информации о проходах трансляции от исходного кода к машинному коду. Это может помочь пользователю компилятора найти причину определенных ошибок, которые могут не быть очевидными в исходном коде, но могут быть легче найдены на уровне выходных данных компилятора более низкого уровня. Это также помогает разработчикам находить ошибки в самом компиляторе.
- Предоставление информации в сгенерированном машинном коде, которая может облегчить поиск ошибок в программе (используя инструмент отладки, называемый отладчиком, например GNU Debugger
gdb). - Поиск и сбор машинного кода, уже сгенерированного для выполнения действий, запрашиваемых операторами в программе пользователя. Этот машинный код организован в модули и подключается к программе пользователя.
Компилятор GNU Fortran состоит из нескольких компонентов:
- Версия команды
gcc(которая также может быть установлена как системная командаcc), которая также понимает и принимает исходный код Fortran. Командаgccявляется программой-драйвером для всех языков в GNU Compiler Collection (GCC); С помощьюgcc, вы можете скомпилировать исходный код любого языка, для которого доступен фронтенд в GCC. - Сама команда
gfortran(которая также может быть установлена как системная командаf95).gfortran— это просто еще одна программа-драйвер, но специально для компилятора Fortran. Отличие отgccзаключается в том, чтоgfortranавтоматически подключает необходимые библиотеки к вашей программе. - Коллекция библиотек времени выполнения. Эти библиотеки содержат машинный код, необходимый для поддержки возможностей языка Fortran, которые не предоставляются непосредственно машинным кодом, сгенерированным фазой компиляции
gfortran, такими как встроенные функции и подпрограммы, а также процедуры для взаимодействия с файлами и операционной системой. - Сам компилятор Fortran (
f951). Это парсер и генератор кода GNU Fortran, связанный и интегрированный с библиотекой бэкенда GCC.f951«переводит» исходный код в ассемблерный код. Обычно вы не будете использовать эту программу напрямую; вместо этого программы-драйвераgccилиgfortranвызовут ее за вас.
Далее: GNU Fortran и GCC, Наверх: Введение [Оглавление][Индекс]
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-8.4.0/gfortran/About-GNU-Fortran.html