2
我需要用f2py包装一个简单的fortran90代码。该FORTRAN模块 “test.f90” 是f2py错误:未定义的符号
module util
contains
FUNCTION gasdev(idum)
implicit none
INTEGER(kind=4), intent(inout) :: idum
REAL(kind=8) :: gasdev, ran2
print*,idum
gasdev = ran2(idum)
return
END FUNCTION
FUNCTION ran2(idum)
implicit none
INTEGER(kind=4), intent(inout) :: idum
REAL(kind=8) :: ran2
print*,idum
ran2=2.D0
return
END FUNCTION
end module util
,然后我
f2py -m test -c test.f90
包,但是当我将其导入蟒蛇
In [2]: import test
它促使我与错误说
ImportError: ./test.so: undefined symbol: ran2_
任何有关如何 要解决这个问题?谢谢。
谢谢。令人沮丧的是,Fortran编译器本身的代码运行良好,并且由f2py吐出的错误对我来说不是很明显...... – nye17
当然,编译会正常工作。但是,链接可能是另一个问题,除非你的代码库中有一个外部过程ran2。 – janneb
我曾经认为我必须使用'external'关键字来指定一个外部函数,当我声明它的时候从来没有意识到它已经是这样了...... – nye17