Re: How to capture the compiler output
Mats Wichmann <[email protected]> Mon, 29 Jul 2024 09:15:02 -0600
| Newsgroups | gmane.comp.programming.tools.scons.user |
|---|---|
| Message-ID | <[email protected]> |
On 7/29/24 08:19, 于 wrote: > Hi Guys, > > I want to capture the compiler output, to get the warning and error > counter. > I think I can redefinite the sys.write.stdout. So I did. And I can > capture the scons command line, but I can't get compiler > output(warning&error). > Then I find that compiler warning and error are print via > sys.write.stderr, so I modify compiler argument, print all of compiler > output via sys.write.stdout. But I can't get warning and error also. > I know scons call compiler via subprocess, subprocess can get compiler > output. But scons don't save compiler output. > How can I capture compiler warning and error output via scons. Your best bet today is to capture this *outside* of SCons. On a Linux system, for example, you can use the "script" command to capture a session, or you can redirect the SCons command itself, like: script -c "scons target" BUILD.LOG scons target 2>&1 | tee BUILD.LOG Neither has a *direct* equivalent on Windows though you can still capture the two output streams. There have been several requests for this over the years - you can hunt in the issue tracker on GitHub and see a few of them - but the fact is, SCons itself doesn't listen (1), so it doesn't *know* what the output from external build commands are. (1) there are a few exception... while running Configure() checks, SCons uses a special setup to capture everything from those builds which it uses in a special way, but in normal running, no. _______________________________________________ Scons-users mailing list [email protected] https://pairlist4.pair.net/mailman/listinfo/scons-users