我試圖在Fortran中執行一個命令,因爲我們的集羣使用舊的編譯器,所以我不能使用execute_command_line。所以我想切換到系統:GFortran不知道系統()
succ = system("zip -0q " // zipfile &
// " " // npy_name)
if(succ /= 0) then
write (*,*) "Can't execute zip command"
endif
對於IFort我可以使用:
USE IFPORT
,它工作正常。 GFortran不知道這個庫(因爲它是英特爾的),所以我把它註釋掉,然後我得到:
~/NPY-for-Fortran/src/npy.f90:52:15:
succ = system("rm " // npy_name)
1
Error: Function ‘system’ at (1) has no IMPLICIT type
我如何在命令行下執行命令,使得它適用於舊&新的編譯器,如以及英特爾& GNU?如果你需要一個完整的工作環境,這是整個的資源文件:
https://github.com/MRedies/NPY-for-Fortran.git
我一直使用它作爲子程序,'call system(..)'。 FWIW。 – agentp
@agentp - 你可以「調用」它,或者你可以用它作爲函數返回系統命令的返回值。 –
在系統不可用之前,您必須回到gfortran 4.1。在我的優先級列表中支持一箇舊/有限的版本不會太高。 – francescalus