This is the mail archive of the
mailing list for the GCC project.
Re: #including <tchar.h> using gcc on Cygwin
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
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:
>>> 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.