MODULE utils
IMPLICIT NONE
PUBLIC
INTEGER :: num_atom ! number of atoms in one configuration
CONTAINS
SUBROUTINE readin
IMPLICIT NONE
INTEGER :: iargc, ndim, i
END SUBROUTINE readin
SUBROUTINE convert
IMPLICIT NONE
REAL :: x,y,z
END SUBROUTINE convert
我通过编译:
gfortran -shared -fPIC -cpp -O2 thiscode.f90 -o somelib.so
因此,尝试从以下称“看书”功能python代码:
import os
_path = os.path.dirname(os.path.realpath(__file__)) + "/" + "somelib.so"
from ctypes import cdll, byref, c_int, c_double, c_char
lib_polint = cdll.LoadLibrary(_path)
def A():
a = lib_polint.readin_
A()
我无法将函数的名称识别为“somelib.so”,并且出现以下错误:
“undefined symbol:readin_”。
如果我删除模块,并保留子程序“readin”,它的工作原理。 如何处理?
2017-03-29
maicon