f2py没有找到任何compi

2024-09-29 02:28:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经安装了NAG Fortran编译器。我可以通过调用nagfor -o helloworld helloworld.f90来编译Fortran代码。如果我用f2py -c -m helloworld helloworld.f90 --fcompiler=nagfor运行f2py,则不会发生任何事情。另外,如果我只运行f2py什么都不会发生。f2py --help-fcompiler没有输出。在

我已经安装了Windows7并使用了Anaconda Python发行版。你知道我该怎么解决这个问题吗?在


Tags: 代码编译器helpanaconda事情helloworldfortranf90
2条回答

根据伊恩的评论和this post我成功地运行了f2py(不幸的是,只有gnufortran编译器)。在

我不得不将C:\Loopy\Lib\site-packages\numpy\distutils\fcompiler\gnu.py中的第337行改为:

pass #raise NotImplementedError("Only MS compiler supported with gfortran on win64")

另外,我使用C:\Loopy\Scripts\f2py.py。在

不寻常的是,您根本看不到任何错误输出。 听起来好像你在打别的电话。 确保Anaconda的脚本目录在您的路径上,并且当前目录中没有名为f2py的某种脚本。 根据您的计算机设置为解释文件类型的方式,您可能需要运行类似python f2py.py的程序,其余参数相同。在

如果你用的是水蟒,你应该已经有一个gfortran的副本了。 如果你想用它来代替,确保Anaconda的bin目录在你的路径上。 除非您有一个非常新的(1.10,目前正在开发中)版本的numpy,要使用gfortran,您需要转到Anaconda/Lib/site-packages/numpy/distutils/fcompiler/gnu.py并注释掉在64位windows上引发错误的行(大约在第330行附近)。 一旦你这样做了,它应该能正常工作。在

编辑:根据旧的f2py docs和{a2}判断,正确的fcompiler标志是{}。 编译器由供应商指定,而不是由可执行文件名指定。在

相关问题 更多 >