1.1 О GNU Fortran
Компилятор GNU Fortran полностью поддерживает стандарты Fortran 77, 90 и 95, части стандартов Fortran 2003 и Fortran 2008, а также несколько расширений поставщиков. Цель разработки — предоставить следующие функции:
- Чтение программы пользователя, хранящейся в файле и содержащей инструкции, написанные на Fortran 77, Fortran 90, Fortran 95, Fortran 2003 или Fortran 2008. Этот файл содержит исходный код.
- Перевод программы пользователя в инструкции, которые компьютер может выполнять быстрее, чем сам процесс перевода инструкций. Результатом компиляции программы является машинный код, код, предназначенный для эффективного перевода и обработки машиной, например, вашим компьютером. Люди обычно хуже пишут машинный код, чем 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-6.4.0/gfortran/About-GNU-Fortran.html