这是一个非常新手的问题,但在谷歌搜索了一段时间后,我一直没能找到解决方案。我正在使用Eclipse(在Linux Mint中)编写Python代码,它需要一些用Fortran 77编写的例程(代码位于名为
fortran_code.f
). 我用过
f2py
获取文件
fortran_code.so
。此文件与Python代码位于同一文件夹中(
../workspace/python_project/src
). Python代码仅包括:
import fortran_code
a = 10
fortran_code.fortran_subroutine(a)
再一次,结果是:
Traceback (most recent call last): File
"/home/user/Documents/workspace/python_project/src/Main.py", line 7,
in <module>
import fortran_code ImportError: /home/user/Documents/workspace/python_project/src/fortran_code.so:
undefined symbol: PyCObject_Type
Fortran子程序代码为:
SUBROUTINE fortran_subroutine(a)
REAL*8, intent(in) :: a
REAL*8 b
b=a*2
end subroutine fortran_subroutine
要获得.so文件(fortran_code.so),我使用:
f2py -c fortran_code.f -m fortran_code
f2py的版本是2。Python的版本是2.7.4
解决这个问题的任何帮助都是非常有用的。
谢谢