Как скомпилировать файлы Fortran 77 в linux? [закрытый]

Мне нужен компилятор для Fortran 77 в linux.

есть ли бесплатные компиляторы, которые люди используют?

Я слышал о g77, но я не могу найти rpm или как установить его в linux.

спасибо!

9 ответов


имя компилятора Fortran GCC изменилось:g77 был заменен на gfortran, который обрабатывает Fortran 95 и, возможно, более поздние варианты.

пакет в Ubuntu называется gfortran:

sudo apt-get install gfortran

(или используйте synaptic)

пакет в Fedora называется gfortran и является частью gcc, который у вас, вероятно, уже есть:

sudo yum install gcc

(или использовать pirut)

подобные поиски должны работать для вашего дистрибутива как что ж.

обновление: на RedHat 4.1.2 пакет, кажется, называется gcc4-gfortran. Кстати, вы должны иметь возможность искать это с помощью yum, и это может быть лучшим ответом на ваш вопрос:

yum search "*fortran*"

Для Amazon Linux:

 sudo yum --enablerepo=epel install gcc-gfortran

"кварк" написал в своем ответе, что g77 переименован в gfortran. Это неверно.

g77 ang gfortran-это разные компиляторы. г77-это заменить gfortran в коллекции компиляторов GNU (GCC), это не переименован компилятором gfortran.

gfortran-это современный компилятор Fortran, основанный на компиляторе g95. г77-это пятюня. Они не разделяют код. Двоичные файлы и библиотеки также несовместимы между g77 и gfortran, поскольку они используют другой Абис.

g77-это тот же компилятор, известный как f2c (который можно загрузить из библиотека netlib), или, точнее, сценарий оболочки под названием fc, который вызвал f2c, а затем cc на выходе. Все, что сделала группа 77, - это пропустила C в качестве промежуточного языка, поскольку он пришел со штрафом за скорость в 1980-х и начале 1990-х годов. f2c и g77 были написаны одним и тем же человеком и в остальном идентичны. С современным процессором (длинный конвейер и прогнозирование ветвей) и современным компилятором C (гораздо лучший псевдоним анализ), г77 дает вам никакого преимущества над оригинальной завод f2c. компилятором gfortran, с другой стороны, поддерживает современные стандарты Фортрана (Фортран 90, 95, 2003 и 2008) в дополнении к старшему языке Fortran 77 и Fortran 66 (ака Фортран IV) и является явным улучшением по сравнению г77 и f2c. Он также генерирует более быстрый код и дает нам лучшие сообщения об ошибках.

g77 бинарно совместим с f2c, но не с gfortran. gfortran можно заставить принять G77 ABI, пройдя -ff2c. Этот параметр компилятора должен следует избегать, если это возможно, поскольку это снижает производительность кода Fortran.


есть http://www.g95.org/ это доступно.

Если я хорошо помню, у GNU нет компилятора FORTRAN, но препроцессор FORTRAN (или как там это называется). Он просто переводит ваш код на C и компилирует его с помощью компилятора C. Конечно, производительность становится дерьмом в этом процессе.

однако, если вы используете FORTRAN, я предполагаю, что это своего рода вычислительный проект. Если это бесплатно( не академический и не связанный с курсом), Вы можете получить Компилятор Intel FORTRAN бесплатно. По моему опыту, это происходит примерно в 3-4 раза быстрее, чем любая бесплатная реализация.


gcc-fortran - имя пакета для Fortran компилятор openSUSE 11.x.

linux-y3pi: # zypper what-provides gcc-fortran
Loading repository data...                                                                                                                                                        
Reading installed packages...
S | Name        | Type    | Version | Arch   | Repository             
--+-------------+---------+---------+--------+------------------------
i | gcc-fortran | package | 4.5-4.2 | x86_64 | openSUSE-11.3-Oss      
i | gcc-fortran | package | 4.5-4.2 | x86_64 | openSUSE-11.3 11.3-1.82
v | gcc-fortran | package | 4.5-4.2 | i586   | openSUSE-11.3-Oss      
[1]+  Done                    yast2
linux-y3pi: # 

http://gcc.gnu.org/fortran/


Я сделал следующие шаги и работал!

  1. редактировать /etc/apt/sources.list

  2. добавьте этот текст в этот файл (/etc/apt/sources.list):

    deb http://hu.archive.ubuntu.com/ubuntu/ hardy universe
    deb-src http://hu.archive.ubuntu.com/ubuntu/ hardy universe
    deb http://hu.archive.ubuntu.com/ubuntu/ hardy-updates universe
    deb-src http://hu.archive.ubuntu.com/ubuntu/ hardy-updates universe
    
  3. "сохранить файл"

  4. открыть терминал, типа : sudo apt-get install fort77


средства для установки программного обеспечения дистрибутиву. Например, в Ubuntu9 я бы запустил Synaptic и выполнил поиск Fortran или g77 (apt-get также можно использовать).

другие дистрибутивы, о которых я мало знаю, хотя я слышал о yum и yast Для (я думаю, но я не уверен) RedHat и Suse.

Если он недоступен через стандартный установщик пакетов, вам придется найти другое решение, например:

  • С помощью другой Фортран; или
  • построение его из источника.

этот второй метод звучит зловеще, но это действительно не так (кроме обеспечения правильных зависимостей). Процесс configure/make / install, которому следует большинство пакетов с исходным кодом, делает его удивительно простым в перекрестном распространении.

некоторые обороты можно найти здесь. Программное обеспечение GNU доступно здесь или вы можете проверить их зеркала для ускорения сайта.


вы также можете использовать Netbeans и сделать проект c&C++ и добавить Fortran с новым .F90 файл и использовать инструменты Netbeans для запуска и отладки . перед этим необходимо установить пакеты gcc и gfortran .


по моему опыту, дистрибутивы Red Hat (и основанные на нем) включают gfortran, но это опция, когда вы выполняете установку, поэтому кажется вероятным, что ваша система была настроена без gfortran. Если у вас есть установочный носитель, я думаю, вы сможете установить gfortran оттуда.

в противном случае, чтобы получить правильный компилятором gfortran RPM для вашей системы, я предлагаю связанная страница rpmfind.

Как только вы установите gfortran, я думаю, что "- std=legacy " (quotes mine) должен позволить компиляции F77 работать.