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-7.2.0/gfortran/About-GNU-Fortran.html