Issue 11599: Useless error message when distutils fails compiling (original) (raw)

Really, can't distutils at least display the command-line that failed to execute?

Traceback (most recent call last): File "/home/antoine/cpython/default/Lib/distutils/unixccompiler.py", line 176, in _compile extra_postargs) File "/home/antoine/cpython/default/Lib/distutils/ccompiler.py", line 911, in spawn spawn(cmd, dry_run=self.dry_run) File "/home/antoine/cpython/default/Lib/distutils/spawn.py", line 34, in spawn _spawn_posix(cmd, search_path, dry_run=dry_run) File "/home/antoine/cpython/default/Lib/distutils/spawn.py", line 138, in _spawn_posix % (cmd[0], exit_status)) distutils.errors.DistutilsExecError: command 'gcc' failed with exit status 1

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "/home/antoine/cpython/default/Lib/test/test_embed.py", line 42, in test_subinterps exe = self.make_exe("embed1.c") File "/home/antoine/cpython/default/Lib/test/test_embed.py", line 29, in make_exe compiler.compile([srcpath], output_dir=build_dir) File "/home/antoine/cpython/default/Lib/distutils/ccompiler.py", line 576, in compile self._compile(obj, src, ext, cc_args, extra_postargs, pp_opts) File "/home/antoine/cpython/default/Lib/distutils/unixccompiler.py", line 178, in _compile raise CompileError(msg) distutils.errors.CompileError: command 'gcc' failed with exit status 1

It appears a choice has been made to print only the first argument in the error messages; attached patch changes that, please test.

Well, I don't have the failing setup at hand anymore, but the patch looks reasonable to me. Thank you!

I will apply this this week; I don’t think I need to ask the ML after all, the output is already different when you run with DISTUTILS_DEBUG — and it’s debug mode anyway, not regular use, so I don’t foresee any compat issue.