printf goes to serial port?

Alex Martin
Fri Dec 19 21:01:00 GMT 2008

Gary R. Van Sickle wrote:
>> From:  Alex Martin
>> Well, I was using a port monitor to debug some of the traffic 
>> between my serial device, and my software, when I noticed the 
>> output accidentally.
>> I am not sure when the behavior started. It used to work 
>> fine, I was using printf to debug things, then I turned off 
>> all of those printf statements, and continued development on 
>> the gui side (fox toolkit) of my application, and then had to 
>> go in and modify my low level serial class and was trying to 
>> get my printf debug output again, to no avail.
>> I have updated cygwin a few times, otherwise I cannot think 
>> of anything specific.
>> What other details can I provide?
> Well, whatever details you have.  I'm still in "pull mode" here, which isn't
> conducive to problem-solving.  So far I've been able to gather:
> 1.  You are developing some sort of app that communicates over a serial port
> to some other device.
> 2.  You "have a cygwin environment".
> 3.  The app has a GUI, using something called "fox toolkit" (with which I am
> not familiar).
> 4.  You had debug printf()s that used to work, then a bunch of stuff
> changed, and now they work differently.
> A few gaps that need filling before anything better than SWAGs can come your
> way:
> - Is this app a Cygwin app, 

No, it is a windows app.

I am using cygwin primarily because I get the /dev/ttyS* devices. I 
could not find info on how to talk to a serial port in the windows world 
without using "MFC" which I refuse to touch.

or is Cygwin involved only perhiperally (e.g.
> you're using Cygwin make to run the MinGW toolchain), 

No mingw. Using all of cygwin's make, g++, etc.

or is Cygwin not
> directly involved at all and you're saying "My non-Cygwin-related app was
> working fine, I changed a bunch of stuff in the app and also upgraded
> Cygwin, and now the app is broke and I'm thinking Cygwin could be to blame"?

I do not think the app is broken. Somehow stdout is going to the serial 
port, my code relating to file descriptors (a serialio class that 
provides functions like open, close, read, write, flush), opening and 
closing the devices, etc has never changed (that is, the code is the 
same code since back when printf worked). Other code has changed, that 
is, the gui layout, function flow, etc.

> - Since your app is a GUI app, where did you expect your printf()s to go?

Well, someone taught me to use cygwin in this manner, and I have been 
doing so for a long time, that is, I can use a cygwin window to invoke 
my windows app, and the cygwin console would catch printfs (stdout 
chatter), so you can use it as a debug console.

>> Alex Martin

Unsubscribe info:
Problem reports:

More information about the Cygwin mailing list