On 6/22/07, Johannes Gajdosik <johannes.gajdosik@gmx.at> wrote:
On 2007.06.22 21:47:09 CEST, Matthew Gates wrote:
> On Friday 22 June 2007, Johannes Gajdosik wrote:
> > On 2007.06.22 05:30:23 CEST, Matthew Gates wrote:
> > > What's the deal with the command window running in the Windows release?
> > >  I assume this is because SDL used to write to stdout.txt and
> > > stderr.txt.
> >
> > Fabien has just forgotten the -mwindows compilation option.
> >
> > > I think a better approach would be to write console output to a log
> > > file in the user directory.   On Linux it could be a copy of stdout &
> > > stderr (I find output on the tty useful when coding).
> >
> > We should get rid of the generated files: Some users have contaced me
> > because they use stellarium installed on an USB stick. And they fear that
> > continuous writing on the USB stick will harm it, which is true as far as
> > I know.
>
> If we use this -mwindows compilation option, do we see stdout and stderr
> when Stellarium is started from the command window?  If so, we still have a
> method for people to send us the output.

No there is no command window, no stdout and stderr. This is the usual way for
windows programs. Windows programs usually have no commandline arguments,
eigther.

> If not, then I would suggest turning off the creation of a log file by
> default, but enabling it with a command line option.

This would mean replacing all occurrences of cout, cerr in the code with something different.
I suggest a macros (COUT,CERR), which then would be defined according to architecture.

#ifndef WIN32
#define COUT cout
#define CERR cerr
#else
...

No way. This would be very very messy.

Anyway I think it is just fine to have a log window for windows users, it would probably improve the average bug reports quality. Now if we want to have SDL like files, we should look in SDL code how they did that. Maybe we could save those files into the /.stellarium/ directory which will also be better for the USB stick problem (which is not very critical anyway)

Fabien