2013-10-30 22 views
1

我試圖編譯一個相對簡單的Fortran可執行文件,以便可以將它傳遞給其他沒有安裝Cygwin(或類似的東西)的Windows用戶,但是,我無法讓可執行文件作爲獨立文件運行。我試過gfortran -static file.fgfortran -static-libgfortran file.f,但其他用戶總是會遇到這樣的錯誤:無法在Cygwin中生成可移植的Fortran可執行文件

The program can’t start because cygwin1.dll is missing from your computer. Try reinstalling the program to fix this problem.

從我在線閱讀(例如here),該-static選項應該是足夠了。我已經驗證從我的機器上運行可執行文件(DOS提示符)確實有效。

我有gcc(gfortran)版本4.7.3。我還應該指出,這是我編譯便攜式Fortran的第一次嘗試。

更新
意識到這不是一個具體的gfortran-問題(感謝這裏回覆)後,搜索使我相關的職位herehere

+0

你是tdy mingw嗎? –

+0

不,但是根據你的評論和第一個答案,我會試試這個報告。 – TTT

回答

2

這在Cygwin FAQ部分原因。解決方案是安裝mingw64-i686-gcc-fortran包及其依賴項,並用i686-w64-mingw32-gfortran -static交叉編譯您的代碼。

1

只需將cygwin1.dll與您的二進制文件(都放在同一個文件夾中)一起打包,那麼它將運行得很好。

相關問題