[Numpy-discussion] Redirecting f2py output to a logfile (when called via distutils)

David Ketcheson dketch at gmail.com
Wed Oct 23 14:41:59 EDT 2013


In Clawpack, we use numpy.distutils to handle compilation and wrapping of
Fortran source files via f2py.  This generates a huge amount of output
(warnings generated by f2py in intermediate steps) that (it seems) can
safely be ignored.  However, it's problematic to have pages of warnings fly
by whenever a user installs the package.  I would like to redirect this
output to a log file.

I have tried adding

    sys.stdout = open('install.log', 'w')

in the setup.py file.  This redirects some of the output, but not all of
it.  Below I've pasted an example of output that still prints to the
terminal.  How can I force all of this output to go into a log file and not
be printed to the screen?

An example setup.py file is here:
https://github.com/clawpack/pyclaw/blob/master/src/pyclaw/setup.py

Some example output that I can't redirect is here:

    In file included from
> build/src.macosx-10.5-x86_64-2.7/clawpack/riemann/euler_4wave_2Dmodule.c:18:
>
>     In file included from
> build/src.macosx-10.5-x86_64-2.7/fortranobject.h:13:
>
>     In file included from
> /Users/ketch/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/arrayobject.h:15:
>
>     In file included from
> /Users/ketch/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/ndarrayobject.h:17:
>
>     In file included from
> /Users/ketch/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/ndarraytypes.h:1728:
>
>
> /Users/ketch/anaconda/lib/python2.7/site-packages/numpy/core/include/numpy/npy_deprecated_api.h:11:2:
> warning: "Using deprecated NumPy API, disable it by #defining
> NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION" [-W#warnings]
>
>     #warning "Using deprecated NumPy API, disable it by #defining
> NPY_NO_DEPRECATED_API NPY_1_7_API_VERSION"
>
>      ^
>
>
> build/src.macosx-10.5-x86_64-2.7/clawpack/riemann/euler_4wave_2Dmodule.c:111:12:
> warning: unused function 'f2py_size' [-Wunused-function]
>
>     static int f2py_size(PyArrayObject* var, ...)
>
>                ^
>
>     2 warnings generated.
>
>     clawpack/riemann/src/rpn2_euler_4wave.f90:2.59:
>
>
>
>     subroutine
> rpn2(ixy,maxm,meqn,mwaves,maux,mbc,mx,ql,qr,auxl,auxr,wave,s,amdq,ap
>
>                                                                1
>
>     Warning: Unused dummy argument 'auxl' at (1)
>
>     clawpack/riemann/src/rpn2_euler_4wave.f90:2.64:
>
>
>
>     subroutine
> rpn2(ixy,maxm,meqn,mwaves,maux,mbc,mx,ql,qr,auxl,auxr,wave,s,amdq,ap
>
>                                                                     1
>     Warning: Unused dummy argument 'auxr' at (1)
>

There is a LOT more of it, of course.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/numpy-discussion/attachments/20131023/93bbf9c0/attachment.html>


More information about the NumPy-Discussion mailing list