
On Fri, Nov 15, 2013 at 6:21 PM, Charles R Harris <charlesr.harris@gmail.com
wrote:
On Fri, Nov 15, 2013 at 11:05 AM, Frédéric Bastien <nouiz@nouiz.org>wrote:
I found a line like this in the file:
numpy/distutils/fcompiler/__init__.py
I changed the -2 to 2, but it didn't change anything. In fact, this line wasn't called.
The fct set_verbosity() is called only once, with the value of 0. The default value set at import. If I change that to 2 or -2, it do not change anything.
I think that the problem is related to the exec_command as you told. It seam it call it in a way that don't take the stdout/stderr set in Python. So I can't redirect it. The problem is that is use os.system() and we can't redirect its stdout/stderr.
What about replacing the os.system call to subprocess.Popen? This would allow us to catch the stdout/stderr. We use this call in Theano and it is compatible with python 2.4.
Numpy 1.8 doesn't support python 2.4 in any case, so that isn't a problem ;)
Sure, give it a shot. Looks like subprocess.Popen was intended to replace os.system in any case.
Except that output is not 'real time' with straight Popen, and doing so reliably on every platform (cough - windows - cough) is not completely trivial. You also have to handle buffered output, etc... That code is very fragile, so this would be quite a lot of testing to change, and I am not sure it worths it. David