2013-05-19 116 views
-3

我有这样的代码:错误编译:无法打开模块文件

 PROGRAM xfit 
! driver for routine fit 
    USE nrtype; USE nrutil 
    USE nr 
    USE ran_state, ONLY : ran_seed 
    IMPLICIT NONE 
    INTEGER(I4B), PARAMETER :: NPT=100 
    REAL(SP), PARAMETER :: SPREAD=0.5_sp 
    INTEGER(I4B) :: mwt 
    REAL(SP) :: a,b,chi2,q,siga,sigb 
    REAL(SP), DIMENSION(NPT) :: harvest,sig,x,y 
    call ran_seed(sequence=731) 
    x(:)=arth(0.1_sp,0.1_sp,NPT) 
    call gasdev(harvest) 
    y(:)=-2.0_sp*x(:)+1.0_sp+SPREAD*harvest 
    sig(:)=SPREAD 
    do mwt=0,1 
     if (mwt == 0) then 
      write(*,'(//1x,a)') 'Ignoring standard deviation' 
      call fit(x,y,a,b,siga,sigb,chi2,q) 
     else 
      write(*,'(//1x,a)') 'Including standard deviation' 
      call fit(x,y,a,b,siga,sigb,chi2,q,sig) 
     end if 
     write(*,'(1x,t5,a,f9.6,t24,a,f9.6)') 'A = ',a,'Uncertainty: ',& 
      siga 
     write(*,'(1x,t5,a,f9.6,t24,a,f9.6)') 'B = ',b,'Uncertainty: ',& 
      sigb 
     write(*,'(1x,t5,a,4x,f10.6)') 'Chi-squared: ',chi2 
     write(*,'(1x,t5,a,f10.6)') 'Goodness-of-fit: ',q 
    end do 
    END PROGRAM xfit 

但是,当我编译我收到以下错误

USE ran_state, ONLY : ran_seed 
    1 
Fatal Error: Can't open module file 'ran_state.mod' for reading at (1): 
       No such file or directory 

你能告诉我怎么能解决这个问题?

回答

0

它告诉你,你需要首先构建模块ran_state。如果你编译你的包含ran_state的模块,那么你将得到一个.mod文件。如果你然后建立你的程序,你不应该再犯这个错误。

+0

谢谢,我做了你所说的,但我得到以下错误: –

+0

你得到一个名为ran_state.mod的文件吗? – cup

1

我已经看到了同样的错误,当我建立这样的:

gfortran test.f90 -o test.exe 

use modulename

1

Fatal Error: Can't open module file 'modulename.mod' for reading at (1): No such file or directory

say modulename.mod is at /usr/local/include

and some dependencies at /usr/local/lib

可以使错误与下面走:

gfortran test.f90 -o test.exe -I/usr/local/include -L/usr/local/lib 
相关问题