我正在尝试学习fortran90 / 95,用于矢量和并行科学计算课程。我正在使用Windows Vista 32位,我从here下载了(我相信,无论如何)我操作系统的gfortran编译器的版本。
为了测试它是否正常工作,我写了一个如下的hello world程序:
program testfortran
write(*,*) 'Hello world!"
end program testfortran
从fortran教程中逐字逐字逐句。当我尝试编译它时:
gfortran testfortran.f90
它给了我以下回应:
C:\Program files\gfortran\bin/1d.exe: cannot open output file a.exe: Permission denied
collect2.exe: error: 1d returned 1 exit status
作为一名工程师,我几乎所有的编程经验都是使用Matlab这样的解释语言,而且我对编译语言并不熟悉。我不知道我是在做一个非常愚蠢的错误还是什么。任何帮助将不胜感激。
答案 0 :(得分:1)
a.exe: Permission denied
消息表示您无权写入当前目录。 testfortran.f90
在哪个目录中?你可以在同一目录中创建一个文件(比如echo hello > hello.txt
)吗?你能在不同的目录中试试吗? (但这看起来很奇怪;如果您可以在该目录中创建testfortran.f90
,您应该能够在同一目录中创建a.exe
。)
或许,该目录中已有a.exe
个文件,您无权覆盖该文件。尝试
gfortran testfortran.f90 -o testfortran.exe
此外,您的错误消息指的是1d.exe
。我希望它是ld.exe
,链接器。并且您的示例程序具有不匹配的引号:'Hello world!"
。最好复制并粘贴源代码和任何错误消息,而不是重新输入它们。