Fortran 未定义引用错误

Fortran Undefined Reference Error

我已经通过 MinGW-get 安装程序安装了 gfortran。 当我在 Fortran 中调用子例程并尝试编译时遇到问题。 我写了一个小程序 Hello.F 和一个子例程 World.F 这样程序 Hello.F 调用子例程 World.F

当我使用命令 gfortran Hello.F 编译 Hello.f 时 我看到如下错误,

Undefined Reference to 'World_'

collect2.exe: error: Id returned 1 exit status

下面是Hello.F,

PROGRAM HELLO
CALL WORLD
STOP
END

下面是World.F

SUBROUTINE WORLD
print *, "Hello World!"
RETURN
END

两个程序 Hello.F 和 World.F 都在同一个文件夹中,在输入命令 gfortran hello.f 编译程序之前,我 cd 到这个文件夹。

你可能想在这里读一点:

https://gcc.gnu.org/wiki/GFortranUsage

具体来说,您需要将所有文件告诉编译器,例如:

gfortran -o executable source1.f90 source2.f90

或者你的情况:

gfortran -o helloworld Hello.F World.F