Я установил wxWidgets 2.9.3 в Ubuntu 10.10 с помощью ../configure --with-gtk
Я использую IDE Codeblocks и легко запустил на нем примерную программу Dialogs.
Но когда я попытался запустить свою работукод на Windows, VS2010 (wxWidgets 2.9.2), я получаю несколько ошибок и сбой во время выполнения, перечисленные ниже
error: ‘class wxBitmap’ has no member named ‘UseAlpha’
error: ‘class wxPanel’ has no member named ‘SetBackgroundBitmap’
Следующий код также вызывает ошибку assert "m_menuItem" failed in Enable(): invalid menu item
wxMenuItem *undoMenuItem;
wxMenu* editMenu = new wxMenu(_(""));
undoMenuItem = new wxMenuItem(editMenu, idMenuUndo, _("&Undo\tCtrl+Z"), _("Undo the last action"));
undoMenuItem->Enable(false);
editMenu->Append(undoMenuItem);
Если я закомментирую приведенный выше код, скомпилирую и выполню, я получу SIGSEGV
и стек вызовов
0 0x168f07a cairo_save () (/usr/lib/libcairo.so.2:?)
1 0x806520 wxCairoContext :: PushState () () (/usr/local/lib/libwx_gtk2u_core-2.9.so.3:??)
2 0x805b38 wxCairoContext :: Init (_cairo *) () (/usr/local/lib/libwx_gtk2u_core-2.9.so.3: ??)
3 0х80736a: CreateContext (wxMemoryDC const &) () (/usr/local/lib/libwx_gtk2u_core-2.9.so.3:??)
5 0x822f06 wxGraphicsContext :: Create (wxMemoryDC const &) () (/usr/local/lib/libwx_gorek2_c.so.3: ??)
6 0x7c54b7 wxGCDCImpl :: wxGCDCImpl (wxDC *, wxMemoryDC const &) () (/usr/local/lib/libwx_gtk2u_core-2.9.so.3:??)
7 0x7c55wxGCDC :: wxGCDC (wxMemoryDC const &) () (/usr/local/lib/libwx_gtk2u_core-2.9.so.3:??)
8 0x80555fd Макет :: reset (this = 0x81713c0) (/ home / vinayak / codes/IConBread/breadboard.cpp:79)
9 0x8054e57 Макет :: Макет (this = 0x81713c0) (/home/vinayak/codes/IConBread/breadboard.cpp:17)
10 0x805d7c5 Интерфейс :: Интерфейс (этот= 0x8171200, родительский = 0x81703e0, ширина = 900, высота = 570) (/home/vinayak/codes/IConBread/interface.cpp:24)
11 0x8069db4 MainFrame :: MainFrame (this = 0x8108af8, frame = 0x0, title= ...) (/home/vinayak/codes/IConBread/mainframe.cpp:127)
12 0x80525a8 Application :: OnInit (this = 0x80ab228) (/home/vinayak/codes/IConBread/application.cpp:27)
13 0x8053194 wxAppConsoleBase :: CallOnInit (this = 0x80ab228) (/usr/local/include/wx-2.9/wx/app.h:94)
14 0xc53000 wxEntry (int &, wchar_t **) () (/ usr / local /lib / libwx_baseu-2.9.so.3: ??)
15 0xc530d7 wxEntry (int &, char **) () (/usr/local/lib/libwx_baseu-2.9.so.3:??)
16 0x805245f main (argc = 1, argv = 0xbffff924) (/home/vinayak/codes/IConBread/application.cpp:19)
Что может быть причиной этих ошибок?Помните, что в Windows (VS2010) это отлично работающий код.
Спасибо!