[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Groff] Problems Running a MinGW Built GNU Troff in MSYS RXVT

From: MARSHALL Keith
Subject: [Groff] Problems Running a MinGW Built GNU Troff in MSYS RXVT
Date: Wed, 25 Feb 2004 13:50:37 +0000


I know Earnie is aware of problems with the RXVT implementation, and is
looking into them among his 'round tuit' items.  I would, however, like
to report an issue noted, while attempting to achieve a stable Win32
implementation of GNU Troff (groff), as I believe it may be worthy of
further attention.

Over the past few days, Werner Lemberg, Jeff Conrad and myself have had
the following discussion, on the groff mailing list, which may be found
at, (although some of the dialogue
may have been off-list) -- we had been trying to identify why Win32 builds
of groff, using msvcrt.dll, had been hanging when the postprocessor had
completed the requested page range, (the '-o1' option), and had 
while the preprocessor was still trying to write further, unwanted, page
data into the processing pipeline.

> Just out of curiosity, when running something like 'groff -eo1' on a 
> file on a Unixy system, does eqn respond with 'Broken pipe'?  Does groff
> exit with a non-zero value?
> Doing `groff -pteo1 -ms' on my GNU/Linux box works as expected,
> without any warning or error message.
> Does it also return zero?  Bruno Haible indicated that a SIGPIPE exit on
> his system exited with 128 + SIGPIPE.
> Yes. [it does return zero]
> It also looks fine to me, with a MinGW build from last night's CVS
> snapshot.
> But, before we all rush out to celebrate, after doing a 'make install' 
>    groff -Tps -mom
> now seems to hang after '%%EOF' is written, and any subsequent 'make', 
> requires this to be rebuilt, will hang at the point where it 
> executes this, unless I first do a 'make uninstall'.
> Using a two-day-old snapshot, I don't see this under Win32/MKS/MSVC, 
> with or without my changes to run_pipeline().

And, *this* is where I started to focus on MSYS RXVT issues ...

> Further investigation suggests that this may be related to a bug in the 
> console.  When I execute the above command, it hangs permanently; my 
> recourse is to kill the process, and its associated tty, with 'kill -9'.
> However, remembering a tip I wrote in README.MinGW, if I run
>    cat | groff -Tps -mom
> I can recover the prompt by hitting Ctrl-D, to force EOF on STDIN -- but
> *why* is this waiting for STDIN in the first place?

IMO, groff is *not* actually waiting for EOF on STDIN, but RXVT *is*, 
properly cleaning up the groff process context, and returning to the 
effectively it is RXVT that has hung.

> It would definitely seem to be a bug associated with the MSYS 
> of RXVT -- I don't see this problem if I run my MSYS shell in a native 
> console, or even if I just run the MinGW built groff under cmd.exe.  It 
> works correctly, if I run the MinGW built groff in a Cygwin RXVT.
> RXVT looks much prettier, and output to screen is *much* slower in the 
> Windoze consoles; shame MSYS RXVT doesn't work more reliably :-(

And it also works correctly running the MinGW built groff in a Cygwin 
in a native Windoze console, or in the konsole window under KDE-Cygwin.

Best regards,

reply via email to

[Prev in Thread] Current Thread [Next in Thread]