我在使用f2py和g77编译器编译一些FortranIV代码时遇到问题。我需要这样做来将在Fortran中编写的一些非常旧的代码调用到已经存在的Python模块中。我通过MinGW安装了gcc,但我不确定这是否有任何区别。我也使用Numpy 1.7和SciPy 0.12运行Python 2.7。我的操作系统是Windows7 x64,但我确保我的所有安装都是32位版本。我是Python,Fortran和这个论坛的新手,所以请耐心等待。 我用f2py编译代码时得到的错误如下:
C:\Python27\lib\site-packages\numpy\core\include\numpy\npy_common.h:291: limits.h: No such file or directory
error: Command "gcc -mno-cygwin -mdll -O2 -w -Wstrict-prototypes - DNPY_MINGW_USE_CUSTOM_MSVCR -D__MSVCRT_VERSION__=0x0900 - Ic:\users\ncd69~1.boh\appdata\local\temp\tmpxbl4sc\src.win32-2.7 -IC:\Python27\lib\site- packages\numpy\core\include -IC:\Python27\include -IC:\Python27\PC - c:\users\ncd69~1.boh\appdata\local\temp\tmpxbl4sc\src.win32-2.7\hellomodule.c -o c:\users\ncd69~1.boh\appdata\local\temp\tmpxbl4sc\Release\users\ncd69~1.boh\appdata\local\temp\tmpxbl4sc\src.win32-2.7\hellomodule.o" failed with exit status 1
为了隔离问题,我使用了与gfortran编译器兼容的测试代码。我使用'-c -compiler调用所需的编译器。测试与基本的“Hello World”基本相同。抛出的错误对于真实代码和测试代码是相同的。我查找了错误的文件'npy_common.h',发现第291行调用包含一个标题:limits.h。 由于错误发生在Numpy库中,我假设错误是Numpy?我似乎无法弄清楚为什么会出现这种错误。