Details
-
Bug
-
Resolution: Done
-
P4: Low
-
5.1.1
-
None
-
Windows 7 64bit, mingw-64 4.8.1 seh rev4
-
e59a5f9fdcec5df2f54e88d75a75fcb4a2fe577b
Description
When trying to configure we get a compile error due to the redefition of the FILE_ID_128 struct.
The struct itself has recently been added to MinGW: https://github.com/Alexpux/MinGW-w64/commit/eee0e6f45828fad4a80be7d557f71c213ed34590
Error log when running configure:
C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp:578:3: error: conflicting declaration 'typedef struct _FILE_ID_128 FILE_ID_128' } FILE_ID_128, *PFILE_ID_128; ^ In file included from c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\minwindef.h:146:0, from c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\windef.h:8, from c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\windows.h:69, from C:\Qt\qtbase-opensource-src-5.1.1\include/QtCore/../../src/corelib/global/qt_windows.h:71, from C:\Qt\qtbase-opensource-src-5.1.1\include/QtCore/qt_windows.h:1, from C:\Qt\qtbase-opensource-src-5.1.1\mkspecs\win32-g++/qplatformdefs.h:63, from C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemmetadata_p.h:56, from C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_p.h:58, from C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp:42: c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\winnt.h:3767:7: error: 'FILE_ID_128' has a previous declaration as 'typedef struct FILE_ID_128 FILE_ID_128' } FILE_ID_128, *PFILE_ID_128; ^ C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp:578:17: error: conflicting declaration 'typedef struct _FILE_ID_128* PFILE_ID_128' } FILE_ID_128, *PFILE_ID_128; ^ In file included from c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\minwindef.h:146:0, from c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\windef.h:8, from c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\windows.h:69, from C:\Qt\qtbase-opensource-src-5.1.1\include/QtCore/../../src/corelib/global/qt_windows.h:71, from C:\Qt\qtbase-opensource-src-5.1.1\include/QtCore/qt_windows.h:1, from C:\Qt\qtbase-opensource-src-5.1.1\mkspecs\win32-g++/qplatformdefs.h:63, from C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemmetadata_p.h:56, from C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_p.h:58, from C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp:42: c:\mingw\x64-4.8.1-win32-seh-rev4\mingw64\x86_64-w64-mingw32\include\winnt.h:3767:21: error: 'PFILE_ID_128' has a previous declaration as 'typedef struct FILE_ID_128* PFILE_ID_128' } FILE_ID_128, *PFILE_ID_128; ^ C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp: In function 'QByteArray fileIdWin8(HANDLE)': C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp:617:5 6: error: 'FILE_ID_128' has no member named 'Identifier' result += QByteArray((char *)infoEx.FileId.Identifier, sizeof(infoEx.FileId.Identifier)).toHex(); ^ C:\Qt\qtbase-opensource-src-5.1.1/src/corelib/io/qfilesystemengine_win.cpp:617:8 9: error: 'FILE_ID_128' has no member named 'Identifier' result += QByteArray((char *)infoEx.FileId.Identifier, sizeof(infoEx.FileId.Identifier)).toHex(); ^ Makefile:350: recipe for target 'qfilesystemengine_win.o' failed mingw32-make: *** [qfilesystemengine_win.o] Error 1 Building qmake failed, return code 2