2015-11-03 204 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’ 

我已經下載並安裝了英特爾Fortran編譯器的試用版,但仍然使用gfortran,並且我收到了該消息。

+2

您需要從英特爾使用MPI編譯器(包裝),或使用英特爾編譯器編譯MPICH /的openmpi,然後用成品包裝紙。 –

回答

1

您正在使用的mpif77包裝已配置爲gfortran,該包裝不理解ifort的選項。如果你不具備英特爾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:不found'。如果沒有英特爾編譯器,是否可以編譯? – physicist