[Numpy-discussion] Right way to build Fortran 90 module using numpy.distutils

Juan Luis Cano juanlu001 at gmail.com
Tue Aug 27 14:26:29 EDT 2013


El 27/08/2013 17:27, "Kyle Mandli" <kyle.mandli at gmail.com> escribió:
>
> On Tue, Aug 27, 2013 at 6:46 AM, Juan Luis Cano <juanlu001 at gmail.com>
wrote:
>>
>> I'm having some problems to properly build a module written in Fortran
>> 90 using numpy.distutils. It only contains one subroutine, but:
>>
>> * If I write a .f90 file with the single subroutine (no module ..
>> contains), then f2py tries to compile it using a f77 compiler, and
>> that's not what I want.
>> * If I put it inside a module definition, then at the final
>> compilation stage modulef2pywrapper.c is missing the corresponding
>> .mod file and I have to make the build fail, then copy the .mod from
>> the temp directory and rebuild. Weird.
>>
>> On the other hand, with the second approach f2py creates a unnecessary
>> level of nesting in the corresponding python module and I don't feel
>> quite ok with that.
>>
>> What is the right way to do this? I find the documentation on
>> numpy.distutils a bit lacking, I almost always find the solution by
>> trial and error. I can push the code, it's a short file (part of the
>> rewrite of odeint I'm doing in SciPy).
>>
>> Regards
>>
>> Juan Luis Cano
>> _______________________________________________
>> NumPy-Discussion mailing list
>> NumPy-Discussion at scipy.org
>> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
>
> You should be able to specify the compiler when invoking f2py, something
like:
>
> f2py --fcompiler=$COMPILER -m $MODULE_NAME -c $SOURCE_FILE

That won't work since gfortran is used for both F77 and F90. If you look on
rules.py in f2py F77 wrappers are generated if the subroutine is not inside
a module, and then the compilation fails because it contains invalid
statements for F77. Bug?

Any other suggestions?

> Kyle
>
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion at scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20130827/97aa969a/attachment.html>


More information about the NumPy-Discussion mailing list