0

我正在尝试为有关矢量和并行科学计算的课程学习 fortran90/95。我正在使用 Windows Vista 32 位,我从这里下载了(无论如何我相信是)我的操作系统的 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 之类的解释型语言,而我对编译型语言不是很熟悉。我不知道我是否只是在犯一个非常愚蠢的错误或什么。任何帮助将不胜感激。

4

1 回答 1

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!". 最好复制并粘贴您的源代码和任何错误消息,而不是重新输入它们。

于 2012-08-23T08:00:56.513 回答