2013-10-20 47 views
3

我一直在試圖編譯wxWidgets的使用MinGW的海灣合作委員會(版本4.8.1),並已收到給G ++的錯誤,他說:錯誤而編制的wxWidgets-2.8.12上的MinGW與GCC-4.8.1

../../src/msw/treectrl.cpp: In member function 'virtual bool wxTreeCtrl::MSWOnNo 
tify(int, WXLPARAM, WXLPARAM*)': 
../../src/msw/treectrl.cpp:2581:17: error: 'NMTVDISPINFOWW' was not declared in 
this scope 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
       ^
../../src/msw/treectrl.cpp:2581:30: error: 'info' was not declared in this scope 

       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
          ^
../../src/msw/treectrl.cpp:2581:51: error: expected primary-expression before ') 
' token 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
              ^
../../src/msw/treectrl.cpp:2581:52: error: expected ';' before 'lParam' 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
               ^
In file included from ..\..\include/wx/msw/gccpriv.h:22:0, 
       from ..\..\include/wx/platform.h:577, 
       from ..\..\include/wx/defs.h:21, 
       from ..\..\include/wx/wxprec.h:13, 
       from ../../src/msw/treectrl.cpp:21: 
../../src/msw/treectrl.cpp:2615:17: error: 'NMTVDISPINFOWW' was not declared in 
this scope 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
       ^
../../src/msw/treectrl.cpp:2615:30: error: 'info' was not declared in this scope 

       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
          ^
../../src/msw/treectrl.cpp:2615:51: error: expected primary-expression before ') 
' token 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
              ^
../../src/msw/treectrl.cpp:2615:52: error: expected ';' before 'lParam' 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
               ^
In file included from ..\..\include/wx/msw/gccpriv.h:22:0, 
       from ..\..\include/wx/platform.h:577, 
       from ..\..\include/wx/defs.h:21, 
       from ..\..\include/wx/wxprec.h:13, 
       from ../../src/msw/treectrl.cpp:21: 
../../src/msw/treectrl.cpp:2659:17: error: 'NMTVDISPINFOWW' was not declared in 
this scope 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
       ^
../../src/msw/treectrl.cpp:2659:30: error: 'info' was not declared in this scope 

       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
          ^
../../src/msw/treectrl.cpp:2659:51: error: expected primary-expression before ') 
' token 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
               ^
../../src/msw/treectrl.cpp:2659:52: error: expected ';' before 'lParam' 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
                ^
In file included from ..\..\include/wx/msw/gccpriv.h:22:0, 
       from ..\..\include/wx/platform.h:577, 
       from ..\..\include/wx/defs.h:21, 
       from ..\..\include/wx/wxprec.h:13, 
       from ../../src/msw/treectrl.cpp:21: 
../../src/msw/treectrl.cpp:3084:17: error: 'NMTVDISPINFOWW' was not declared in 
this scope 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
       ^
../../src/msw/treectrl.cpp:3084:30: error: 'info' was not declared in this scope 

       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
           ^
../../src/msw/treectrl.cpp:3084:51: error: expected primary-expression before ') 
' token 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
               ^
../../src/msw/treectrl.cpp:3084:52: error: expected ';' before 'lParam' 
       TV_DISPINFO *info = (TV_DISPINFO *)lParam; 
                ^
makefile.gcc:9310: recipe for target 'gcc_mswudll\coredll_treectrl.o' failed 
mingw32-make: *** [gcc_mswudll\coredll_treectrl.o] Error 1 

任何人都可以幫忙,我嘗試了谷歌搜索,但最小的結果(是的,我讀過他們!)。

回答

6

您的標題中似乎有一個錯誤,NMTVDISPINFOWW(帶有2個尾隨的W)不存在,並且不應出現在任何位置。您可以嘗試修復頭文件中的拼寫錯誤或者下載已知可用的Windows版gcc(例如MinGW-w64或TDM-GCC)。

+0

謝謝!工作得很好!我現在已經成功編譯了wxWidgets! –