Windows XP에서 MinGW로 Qt 4.4.3 컴파일시 에러입니다.
글쓴이: 나그네나그네 / 작성시간: 수, 2008/12/24 - 10:54오후
In file included from C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ security.h:38, from C:\Qt\4.4.3/src/corelib/io/qfsfileengine_win.cpp:68: C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/sspi.h:60: error: `UNI CODE_STRING' does not name a type In file included from C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ security.h:39, from C:\Qt\4.4.3/src/corelib/io/qfsfileengine_win.cpp:68: C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:123: error: `SECURITY_STRING' does not name a type C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:124: error: `SECURITY_STRING' does not name a type C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:125: error: `SECURITY_STRING' does not name a type C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:212: error: typedef `PLSA_OPEN_SAM_USER' is initialized (use __typeof__ instead) C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:212: error: `PSECURITY_STRING' was not declared in this scope C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:212: error: expected primary-expression before ',' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:213: error: `PSECURITY_STRING' was not declared in this scope C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:213: error: expected primary-expression before ',' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:213: error: expected primary-expression before ',' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:213: error: expected primary-expression before '*' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:213: error: expected primary-expression before ')' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:224: error: typedef `PLSA_GET_AUTH_DATA_FOR_USER' is initialized (use __typeof__ instead) C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:224: error: `PSECURITY_STRING' was not declared in this scope C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:225: error: expected primary-expression before ',' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:225: error: `PSECURITY_STRING' was not declared in this scope C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:225: error: expected primary-expression before '*' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:225: error: expected primary-expression before ',' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:225: error: expected primary-expression before ',' token C:/MinGW/bin/../lib/gcc/mingw32/3.4.5/../../../../include/ntsecpkg.h:225: error: expected primary-expression before ')' token mingw32-make: *** [qfsfileengine_win.o] Error 1
Windows XP에서 MinGW를 이용해 Qt 4.4.3 오픈소스 버젼을 컴파일하는 도중 위와 같은 에러가 떴습니다. g++의 버젼은 3.4.5입니다.
ntsecpkg.h의 123번째 줄 부근에는 struct가 정의되어 있습니다 :
typedef struct _SECURITY_USER_DATA { SECURITY_STRING UserName; SECURITY_STRING LogonDomainName; SECURITY_STRING LogonServer; PSID pSid; } SECURITY_USER_DATA, *PSECURITY_USER_DATA, SecurityUserData, *PSecurityUserData;
ntsecpkg.h의 225번째 줄 소스는 다음과 같습니다.
typedef NTSTATUS (NTAPI *PLSA_GET_AUTH_DATA_FOR_USER)(PSECURITY_STRING, SECPKG_NAME_TYPE, PSECURITY_STRING, PUCHAR *, PULONG, PUNICODE_STRING);
이 문제에 대해 아시는분?
댓글 달기