未定义对“guia1”和“ej14”的引用;编译Fortran代码时

未定义对“guia1”和“ej14”的引用;编译Fortran代码时,fortran,geany,Fortran,Geany,我试图编写一个程序,该程序使用带有函数和子例程的模块,但geany在我尝试构建时告诉我: gfortran -Wall -o "ej15" "ej15.f90" (en el directorio: C:\Users\Pedro\proyectos\Guia 1) C:\Users\Pedro\AppData\Local\Temp\cciNhadr.o:ej15.f90:(.text+0x280): undefined reference to `__gu

我试图编写一个程序,该程序使用带有函数和子例程的模块,但geany在我尝试构建时告诉我:

gfortran -Wall -o "ej15" "ej15.f90" (en el directorio: C:\Users\Pedro\proyectos\Guia 1)
C:\Users\Pedro\AppData\Local\Temp\cciNhadr.o:ej15.f90:(.text+0x280): undefined reference to `__guia1_ej14_MOD_crea'
collect2.exe: error: ld returned 1 exit status
Ha fallado la compilación.
该计划是:

 program Guia1_ej15

 use Guia1_ej14

 implicit none

 integer n
 real(8), allocatable:: a(:,:)

 print*, 'Ingrese dimension de matriz'
 read*, n
 print*,' '

 allocate (a(n,n))

 call crea(a,n)

 end program
该模块是:

 module Guia1_ej14

 contains

 subroutine crea(b,m)
 implicit none

 integer i,j,m
 real(8),allocatable:: b(:,:)

 do i=1,m
    do j=1,m
     read*, b(i,j)
    end do
 end do

 end subroutine crea

 end module Guia1_ej14

欢迎光临,请拿着这本书阅读。你的题目很糟糕,我改成了更具体的题目。你应该给我们更多的信息。模块是否位于不同的文件中?如何编译它?您是如何在Geany中设置项目/编译的?我们需要尽可能多的信息。请注意,我们已经有很多关于
未定义引用
错误的问题和答案。似乎
Guia1_ej14
位于不同的文件中。您可能有一个
guia_ej14.o
文件。将其添加到命令行:
gfortran-Wall-o“ej15”ej15.f90“guia_ej14.o
。我不知道怎么和geany一起做对不起我是新手。对不起,如果我的英语不好,我来自阿根廷。是的,我有两个不同的文件,一个有模块,另一个有程序。他们都在同一个项目里。佩德罗,你的英语很好。问题是,您需要告诉geany在程序链接中包含带有例程的目标文件。如果文件名为
ej14.f90
,则首先编译此文件,然后链接到
ej14.o
。我建议先从命令行学习使用编译器,然后再从图形环境转到建筑。您可以在命令提示符(shell)中执行evets listen命令。它们应该起作用。当然,你仍然可以在这里问,如何在Geany做到这一点。但是,我不能帮你,我不使用Geany。欢迎,请拿着这本书阅读。你的题目很糟糕,我改成了更具体的题目。你应该给我们更多的信息。模块是否位于不同的文件中?如何编译它?您是如何在Geany中设置项目/编译的?我们需要尽可能多的信息。请注意,我们已经有很多关于
未定义引用
错误的问题和答案。似乎
Guia1_ej14
位于不同的文件中。您可能有一个
guia_ej14.o
文件。将其添加到命令行:
gfortran-Wall-o“ej15”ej15.f90“guia_ej14.o
。我不知道怎么和geany一起做对不起我是新手。对不起,如果我的英语不好,我来自阿根廷。是的,我有两个不同的文件,一个有模块,另一个有程序。他们都在同一个项目里。佩德罗,你的英语很好。问题是,您需要告诉geany在程序链接中包含带有例程的目标文件。如果文件名为
ej14.f90
,则首先编译此文件,然后链接到
ej14.o
。我建议先从命令行学习使用编译器,然后再从图形环境转到建筑。您可以在命令提示符(shell)中执行evets listen命令。它们应该起作用。当然,你仍然可以在这里问,如何在Geany做到这一点。但是,我不能帮你,我不使用Geany。