#including <tchar.h> using gcc on Cygwin

Dave Brolley brolley@redhat.com
Fri Jan 5 09:08:00 GMT 2001

Thanks to all to responded. It looks like all that is wanted is a macro 
named __T(x) which takes a string literal and produces either a wide 
version of it or just the original literal, depending on whether the 
application is Unicode enabled or not. The mingw32 version of <tchar.h> 
defines similar macros named _T and _TEXT. The __T macro is only used in 
one file of the application, so I'll work around this for now until I 
can find out from the owner of the code whether it is really necessary 
or not.

Thanks again,

Christopher Faylor wrote:

> On Thu, Jan 04, 2001 at 05:54:52PM -0500, Larry Hall (RFK Partners, Inc) wrote:
>> At 05:43 PM 1/4/2001, Dave Brolley wrote:
>>> Hi,
>>> I'm trying to use gcc to compile an application on Cygwin which #includes <tchar.h>. In searching my system, I see a tchar.h in /usr/include/mingw32, but the compiler doesn't seem to be finding it. Is it safe for me to add -I/usr/include/mingw32 to my compile options, or is there a more appropriate way to pick up this header?
>>> BTW, what does mingw32 stand for anyway? :-)
>> It may be OK to do this, but it will be plain luck if it works in this 
>> case.  Mingw32 stands for the Mingw initiative, that seeks to provide 
>> a compiler toolset to produce executables that don't rely on cygwin1.dll.
>> See www.mingw.org for more details.  This directory exists in Cygwin because
>> the compiler delivered with Cygwin supports cross-compiling to Mingw.  To
>> invoke this cross compiler, use the -mno-cygwin flag.  If you do so, you 
>> should find that tchar.h is found, since the compiler will look at this 
>> path for cross compiling purposes.  You must make sure that you don't need
>> the POSIX functions only available in Cygwin though if you enable this flag,
>> since you can't have both Cygwin and Mingw together.  That's why I said 
>> initially that you can try doing what you describe, but if it doesn't work
>> or causes problems, you're on your own!;-)
> Actually, I would not go so far as to say it may be OK.  It is really a
> bad idea to include /usr/include/mingw32 unless you are building mingw
> applications.  You'll get into all sorts of problems if you try to mix
> mingw and cygwin together.  They are mutually exclusive.
> If you are compiling a strict Windows app, though, -mno-cygwin is the
> right thing to do.
> cgf

Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list