i686-w64-mingw32-gcc & ntifs.h

Sam Steingold sds@gnu.org
Mon Aug 22 21:13:00 GMT 2011

> * JonY <wba_l@hfref.fbheprsbetr.arg> [2011-08-22 18:05:33 +0800]:
> On 8/22/2011 09:26, Sam Steingold wrote:
>>> * Kai Tietz <xgvrgm70-tZ/Lr1R23zjA+OdD9eORHt@choyvp.tznar.bet> [2011-08-20 09:31:47 +0200]:
>>> 2011/8/20 JonY <jon_y-Rn4VEauK+AKRv+LV9MX5uipxlwaOVQ5f@public.gmane.org>:
>>>>> /usr/i686-w64-mingw32/sys-root/mingw/include/ddk/ntddk.h:2922:26:
>>>>> error: redeclaration of enumerator `WinRestrictedCodeSid'
>>>>> /usr/i686-w64-mingw32/sys-root/mingw/include/winnt.h:2681:413: note:
>>>>> previous definition of `WinRestrictedCodeSid' was here
>>>>> what about those?
>>>> afaik, you aren't supposed to use use winnt.h and ntddk code together,
>>>> but I'm not sure this is accidental, I'll try to the devs and see if
>>>> they have something.
>>> winnt.h is platform header part.  For DDK you should use AFAIR ntdef.h
>>> and/or wdm.h instead.

so, which one - ntdef or wdm?
let me be clear - the only thing I need ddk for is NtQueryInformationFile.

>> somehow my users who use mingw with msys can include winnt.h and
>> ntddk/ntifs.h while I (who uses cygwin with i686-w64-mingw32-gcc)
>> cannot.
> This is one of the difference between mingw.org and mingw-w64, the
> latter follows MSVC more closely.
> The ddk headers themselves are mostly from ReactOS (which also follows
> MSVC closely), so its not easy to change its behavior to follow mingw.org.

Sorry, let me get it straight.
Are you saying that my problems are the "correct msvc behavior" and the
lack thereof in mingw/msys is an illegal leniency?
IOW, I should _NOT_ expect cygwin/mingw to ever do what I want (i.e.,
include both ntifs and winnt)?

On the other hand, there is this winternl.h file (on cygwin but not on
msys/mingw) which declares NtQueryInformationFile.
Maybe I should use use it on cygwin and ntifs on mingw/msys?

PS. Why are cygwin/mingw and msys/mingw so different?
which is "correct"? which is "better"?
will they ever converge?

Sam Steingold (http://sds.podval.org/) on CentOS release 5.6 (Final) X 11.0.60900031
http://jihadwatch.org http://pmw.org.il http://palestinefacts.org
http://ffii.org http://mideasttruth.com http://iris.org.il
We are born naked, wet, and hungry.  Then things get worse.

Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

More information about the Cygwin mailing list