2015-05-08 47 views
0

我使用Visual Stuido 2010和ifort在Windows(7,64位)下開發運行一些Fortran代碼。在Windows下使用Ifort for Linux編譯Fortran

該代碼,主要編譯爲DLL,在Windows中進行了測試,並且deployd約。 25%的時間到Windows(2000到7)和75%到Suse Linux。儘管Windows解決方案完全由我負責,但Linux「分支」由其他人編寫(與100%相同的代碼)。 Linux分支是使用g95/NAG編譯器編譯的。

由於我們無法控制一些降水,我們將從NAG改爲gfortran。經過一些測試後,我們發現用gfortran(和一些像-o2這樣的優化)編譯的代碼與Windows和ifort(沒有優化,完全調試)相比要花大約兩倍的時間才能完成。我們有機會在linux下編譯代碼,並且獲得了Windows + ifort的速度。
(NAG編譯後的代碼是介於這兩者之間)

對於我們願與ifort用於Windows和Linux編譯代碼顯而易見的原因,所以:

是否有可能在Windows下編譯爲SUSE Linux與ifort (使用cmd或VS 2010)?

+0

當您支持您的支持時,可以直接向英特爾詢問。 AFAIK這是不可能的。您可以在虛擬機中安裝Linux。 –

+0

在VM中安裝Linux的AFAIK不會讓我能夠在該機器上使用ifort進行編譯。最好的解決方案是點擊「編譯」獲得一個.dll和一個Linux共享對象。 –

+0

你爲什麼這麼認爲?帶有Linux的虛擬機是一個完整的系統。你可以在那裏做任何事情。您的「最佳解決方案」必須得到供應商的支持。問他們,但不要相信這樣做。 –

回答

1

我會回答英特爾 - 不,你不能在Windows中編譯Linux(除非使用虛擬機,在這種情況下,你真的在​​運行Linux,如上所述)。虛擬機是一種合理的方法,但是你必須爲Linux上的ifort購買單獨的許可證。或者,因爲我假設你有一個Linux盒子,你可以在那裏測試,在那裏建立(你可以從你的Windows機器上SSH)。沒錯,你不會有Visual Studio IDE,但是我們的一些客戶使用Eclipse(with Photran插件)或代碼:使用英特爾Fortran的塊。