2015-11-03 3 views
3

Я только что начал свою работу с FORTRAN, и я хочу скомпилировать программу. Это то, что я получаю от компилятора после записи make в командной строке.Компилятор не распознает флаги

mpif77 -c     -mcmodel=medium -i-dynamic -no-ipo -r8 -xW -traceback  -O2     ../agile/agile_parameter_module.f 
gfortran: error: unrecognized command line option ‘-i-dynamic’ 
gfortran: error: unrecognized command line option ‘-no-ipo’ 
gfortran: error: unrecognized command line option ‘-r8’ 
gfortran: error: unrecognized command line option ‘-traceback’ 

Я загрузил и установил пробную версию компилятора Intel Fortran, но все еще использовал gfortran, и я получил это сообщение.

+2

Вам необходимо использовать компилятор (обертка) MPI от Intel или скомпилировать MPICH/OpenMPI с использованием компилятора Intel, а затем использовать полученную оболочку. –

ответ

1

mpif77 обертка, которую вы используете, был настроен для gfortran, который не знает настройки для ifort. Если у вас нет инструментов кластера для Intel Fortran, у вас не будет их обертки MPI mpiifort и вам придется настроить openmpi на использование ifort.

Если вы хотите, чтобы избежать компиляции OpenMPI, чтобы установить его на ifort вы можете попробовать использовать обертку MPI для gfortran с ifort, как это:

ifort <ifort command line arguments> `mpif77 -showme:compile` 

для компиляции шагов и

ifort <ifrot command line arguments> `mpif77 -showme:link` 

для шагов ссылки.

Если эти функции не работают напрямую, вы можете посмотреть параметры, испускаемые mpif77, и изменить их для ifort по мере необходимости. Это решение стоп-лога просто для того, чтобы создать ваше программное обеспечение, но для долгосрочного решения вам следует правильно настроить openmpi на использование ifort.

+0

@physicist Мой совет заключался в том, чтобы вызывать ifort напрямую с выводом 'mpif77 -showme: compile', добавленным в вашу командную строку. – casey

+0

Я следил за вашим советом, но теперь я получаю дополнительно: 'gfortran: ошибка: непризнанная опция командной строки '-showme: compile'' – physicist

+0

Хорошо, теперь' ifort: not found'. Можно ли скомпилировать это без компилятора Intel? – physicist

Смежные вопросы