Olá galera.
Alguém já teve essa experiência em utilizar o compilador GCC do MinGW e FLTK para criar Interface Gráfica. Segue erro:
Abraços.
Olá galera.
Alguém já teve essa experiência em utilizar o compilador GCC do MinGW e FLTK para criar Interface Gráfica. Segue erro:
Abraços.
O erro é no linker ld
.
Além de tu ter acesso aos arquivos de cabeçalho .h
, você precisa linkar o teu programa com o código da biblioteca. Tem que passar essa informação pro linker. Normalmente faz isso na invocação do compilador, flag -l
(menos e letra éle minuscula) junto com o nome da biblioteca.
No caso do fltk acho que é -lfltk
, por exemplo
g++ -lfltk meuprograma.cpp -o meuprograma
@Kronal, isso mesmo … funfou. Obrigado.
Agora testei com a wxWidgets … Essa tá difícil, dá um monte de erro. Se souber, agradeço.
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3a0): undefined reference to
wxWindow::SetScrollbar(int, int, int, int, bool)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3a8): undefined reference to
wxWindow::SetScrollPos(int, int, bool)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3b0): undefined reference towxWindow::GetScrollPos(int) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3b8): undefined reference to
wxWindow::GetScrollThumb(int) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3c0): undefined reference towxWindow::GetScrollRange(int) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3c8): undefined reference to
wxWindow::ScrollWindow(int, int, wxRect const*)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3d0): undefined reference towxWindow::ScrollLines(int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3d8): undefined reference to
wxWindow::ScrollPages(int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3f0): undefined reference towxWindowBase::GetHelpTextAtPoint(wxPoint const&, wxHelpEvent::Origin) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x3f8): undefined reference to
wxWindow::SetDropTarget(wxDropTarget*)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x408): undefined reference towxWindow::DragAcceptFiles(bool)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x410): undefined reference to
wxWindowBase::SetConstraintSizes(bool)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x418): undefined reference towxWindowBase::LayoutPhase1(int*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x420): undefined reference to
wxWindowBase::LayoutPhase2(int*)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x428): undefined reference towxWindowBase::DoPhase(int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x430): undefined reference to
wxWindowBase::SetSizeConstraint(int, int, int, int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x438): undefined reference towxWindowBase::MoveConstraint(int, int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x440): undefined reference to
wxWindowBase::GetSizeConstraint(int*, int*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x448): undefined reference towxWindowBase::GetClientSizeConstraint(int*, int*) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x450): undefined reference to
wxWindowBase::GetPositionConstraint(int*, int*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x458): undefined reference towxWindowBase::Layout()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x460): undefined reference to
wxWindowBase::CreateAccessible()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x468): undefined reference towxTopLevelWindowMSW::SetTransparent(unsigned char)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x470): undefined reference to
wxTopLevelWindowMSW::CanSetTransparent()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x478): undefined reference towxFrameBase::OnInternalIdle()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x480): undefined reference to
wxWindowBase::SendIdleEvents(wxIdleEvent&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x490): undefined reference towxWindow::AssociateHandle(HWND__*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x498): undefined reference to
wxWindow::DissociateHandle()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x4d0): undefined reference towxWindowBase::DoMoveInTabOrder(wxWindow*, wxWindowBase::WindowOrder)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x4d8): undefined reference to
wxWindowBase::DoNavigateIn(int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x4e0): undefined reference towxWindow::DoEnable(bool)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x4e8): undefined reference to
wxWindow::GetDefaultBorder() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x4f0): undefined reference towxWindow::GetDefaultBorderForControl() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x500): undefined reference to
wxWindow::DoGetTextExtent(wxString const&, int*, int*, int*, int*, wxFont const*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x508): undefined reference towxTopLevelWindowBase::DoClientToScreen(int*, int*) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x510): undefined reference to
wxTopLevelWindowBase::DoScreenToClient(int*, int*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x518): undefined reference towxWindowBase::DoHitTest(int, int) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x520): undefined reference to
wxWindow::DoCaptureMouse()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x528): undefined reference towxWindow::DoReleaseMouse()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x530): undefined reference to
wxTopLevelWindowMSW::DoGetPosition(int*, int*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x540): undefined reference towxTopLevelWindowMSW::DoGetSize(int*, int*) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x548): undefined reference to
wxFrame::DoGetClientSize(int*, int*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x550): undefined reference towxWindowBase::DoGetBestSize() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x570): undefined reference to
wxWindow::DoSetSize(int, int, int, int, int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x578): undefined reference towxFrame::DoSetClientSize(int, int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x580): undefined reference to
wxWindowBase::DoSetSizeHints(int, int, int, int, int, int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x588): undefined reference towxWindow::DoGetBorderSize() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x590): undefined reference to
wxWindow::DoMoveWindow(int, int, int, int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x598): undefined reference towxTopLevelWindowBase::DoCentre(int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5a0): undefined reference to
wxWindow::DoSetToolTip(wxToolTip*)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5a8): undefined reference towxWindow::DoPopupMenu(wxMenu*, int, int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5b8): undefined reference to
wxWindowBase::DoSetWindowVariant(wxWindowVariant)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5c0): undefined reference towxTopLevelWindowMSW::DoFreeze()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5c8): undefined reference to
wxTopLevelWindowMSW::DoThaw()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5d0): undefined reference towxWindow::LoadNativeDialog(wxWindow*, int&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5d8): undefined reference to
wxWindow::LoadNativeDialog(wxWindow*, wxString const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5f0): undefined reference towxTopLevelWindowMSW::MSWGetStyle(long, unsigned long*) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x5f8): undefined reference to
wxTopLevelWindowMSW::MSWGetParent() const’
src\tes001.o:tes001.cpp:(.rdata$ZTV7MyFrame[ZTV7MyFrame]+0x600): undefined reference towxWindow::MSWCommand(unsigned int, unsigned short)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x608): undefined reference to
wxWindow::CreateWindowFromHWND(wxWindow*, HWND)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x610): undefined reference towxWindow::AdoptAttributesFromHWND()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x618): undefined reference to
wxWindow::SetupColours()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x620): undefined reference towxWindow::MSWOnScroll(int, unsigned short, unsigned short, HWND__*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x628): undefined reference to
wxWindow::MSWOnNotify(int, long long, long long)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x630): undefined reference towxWindow::MSWOnDrawItem(int, void**)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x638): undefined reference to
wxWindow::MSWOnMeasureItem(int, void**)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x640): undefined reference towxWindow::HandleSettingChange(unsigned long long, long long)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x648): undefined reference to
wxWindow::MSWHandleMessage(long long*, unsigned int, unsigned long long, long long)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x650): undefined reference towxFrame::MSWWindowProc(unsigned int, unsigned long long, long long)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x658): undefined reference to
wxWindow::MSWDefWindowProc(unsigned int, unsigned long long, long long)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x660): undefined reference towxWindow::MSWShouldPreProcessMessage(tagMSG*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x668): undefined reference to
wxWindow::MSWProcessMessage(tagMSG*)'
src\tes001.o:tes001.cpp:(.rdata$ZTV7MyFrame[ZTV7MyFrame]+0x678): undefined reference towxWindow::MSWDestroyWindow()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x690): undefined reference to
wxWindow::MSWGetBgBrushForChild(HDC, wxWindow)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6b8): undefined reference towxWindow::TranslateBorder(wxBorder) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6c0): undefined reference to
wxTopLevelWindowMSW::MSWGetCreateWindowCoords(wxPoint const&, wxSize const&, int&, int&, int&, int&) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6d8): undefined reference towxNonOwnedWindow::DoClearShape()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6e0): undefined reference to
wxNonOwnedWindow::DoSetRegionShape(wxRegion const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6e8): undefined reference towxNonOwnedWindow::DoSetPathShape(wxGraphicsPath const&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6f0): undefined reference to
wxTopLevelWindowMSW::Maximize(bool)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x6f8): undefined reference towxTopLevelWindowMSW::Restore()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x700): undefined reference to
wxTopLevelWindowMSW::Iconize(bool)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x708): undefined reference towxTopLevelWindowMSW::IsMaximized() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x710): undefined reference to
wxTopLevelWindowBase::IsAlwaysMaximized() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x718): undefined reference towxTopLevelWindowMSW::IsIconized() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x720): undefined reference to
wxTopLevelWindowMSW::SetIcons(wxIconBundle const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x728): undefined reference towxFrame::ShowFullScreen(bool, long)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x730): undefined reference to
wxTopLevelWindowMSW::ShowWithoutActivating()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x740): undefined reference towxTopLevelWindowMSW::SetTitle(wxString const&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x748): undefined reference to
wxTopLevelWindowMSW::GetTitle() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x750): undefined reference towxTopLevelWindowMSW::EnableCloseButton(bool)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x758): undefined reference to
wxTopLevelWindowMSW::RequestUserAttention(int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x778): undefined reference towxTopLevelWindowBase::GetRectForTopLevelChildren(int*, int*, int*, int*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x798): undefined reference to
wxFrameBase::DoGiveHelp(wxString const&, bool)'
src\tes001.o:tes001.cpp:(.rdata$ZTV7MyFrame[ZTV7MyFrame]+0x7a0): undefined reference towxFrameBase::IsOneOfBars(wxWindow const*) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7a8): undefined reference to
wxFrame::MSWFindMenuFromHMENU(HMENU)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7b0): undefined reference towxFrameBase::SetMenuBar(wxMenuBar*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7c0): undefined reference to
wxFrameBase::FindItemInMenuBar(int) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7c8): undefined reference towxFrameBase::CreateStatusBar(int, long, int, wxString const&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7d0): undefined reference to
wxFrame::OnCreateStatusBar(int, long, int, wxString const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7e0): undefined reference towxFrameBase::SetStatusBar(wxStatusBar*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7e8): undefined reference to
wxFrameBase::SetStatusText(wxString const&, int)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7f0): undefined reference towxFrameBase::SetStatusWidths(int, int const*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x7f8): undefined reference to
wxFrame::CreateToolBar(long, int, wxString const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x800): undefined reference towxFrameBase::OnCreateToolBar(long, int, wxString const&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x810): undefined reference to
wxFrameBase::SetToolBar(wxToolBar)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x818): undefined reference towxFrameBase::DoMenuUpdates(wxMenu*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x828): undefined reference to
wxFrameBase::DetachMenuBar()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x830): undefined reference towxFrame::AttachMenuBar(wxMenuBar*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x838): undefined reference to
wxFrame::PositionStatusBar()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x840): undefined reference towxFrame::PositionToolBar()' src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x850): undefined reference to
wxFrame::InternalSetMenuBar()‘
src\tes001.o:tes001.cpp:(.rdata$_ZTV7MyFrame[_ZTV7MyFrame]+0x860): undefined reference towxFrame::GetDefaultIcon() const' src\tes001.o: In function
MyFrame::~MyFrame()’:
D:\eclipse-cpp\workspace\Tes005\Debug/…/src/tes001.cpp:12: undefined reference towxFrame::~wxFrame()' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x10): undefined reference to
wxFrame::GetClassInfo() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x28): undefined reference towxObject::CreateRefData() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x30): undefined reference to
wxObject::CloneRefData(wxRefCounter const*) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x38): undefined reference towxWindowBase::SetNextHandler(wxEvtHandler*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x40): undefined reference to
wxWindowBase::SetPreviousHandler(wxEvtHandler*)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x48): undefined reference towxEvtHandler::ProcessEvent(wxEvent&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x50): undefined reference to
wxEvtHandler::QueueEvent(wxEvent*)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x60): undefined reference towxEvtHandler::SearchEventTable(wxEventTable&, wxEvent&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x70): undefined reference to
wxWindowBase::TryAfter(wxEvent&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x88): undefined reference towxFrame::GetEventTable() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x90): undefined reference to
wxFrame::GetEventHashTable() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x98): undefined reference towxEvtHandler::DoSetClientObject(wxClientData*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xa0): undefined reference to
wxEvtHandler::DoGetClientObject() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xa8): undefined reference towxEvtHandler::DoSetClientData(void*)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xb0): undefined reference to
wxEvtHandler::DoGetClientData() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xb8): undefined reference towxTopLevelWindowBase::Destroy()' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xc0): undefined reference to
wxWindow::SetLabel(wxString const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xc8): undefined reference towxWindow::GetLabel() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xe0): undefined reference to
wxWindow::GetLayoutDirection() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xe8): undefined reference towxTopLevelWindowMSW::SetLayoutDirection(wxLayoutDirection)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xf0): undefined reference to
wxWindow::AdjustForLayoutDirection(int, int, int) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0xf8): undefined reference towxTopLevelWindowMSW::Raise()' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x100): undefined reference to
wxWindow::Lower()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x108): undefined reference towxFrame::GetClientAreaOrigin() const' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x110): undefined reference to
wxWindowBase::ClientToWindowSize(wxSize const&) const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x118): undefined reference towxWindowBase::WindowToClientSize(wxSize const&) const' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x120): undefined reference to
wxWindowBase::GetEffectiveMinSize() const’
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x128): undefined reference towxWindowBase::Fit()' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x130): undefined reference to
wxWindowBase::FitInside()'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x140): undefined reference towxWindowBase::SetVirtualSizeHints(int, int, int, int)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x148): undefined reference to
wxTopLevelWindowBase::SetMinSize(wxSize const&)'
src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x150): undefined reference towxTopLevelWindowBase::SetMaxSize(wxSize const&)' src\tes001.o:tes001.cpp:(.rdata$_ZTV20wxMDIParentFrameBase[_ZTV20wxMDIParentFrameBase]+0x188): undefined reference src\tes001.o:tes001.cpp:(.rdata$_ZTV21wxMDIClientWindowBase[_ZTV21wxMDIClientWindowBase]+0x590): undefined reference to
wxWindow::DoMoveWindow(int, int, int, int)'src\tes001.o:tes001.cpp:(.rdata$_ZTV21wxMDIClientWindowBase[_ZTV21wxMDIClientWindowBase]+0x598): undefined reference to `wxWindowBase::DoCentre(int)'
src\tes001.o:tes001.cpp:
collect2.exe: error: ld returned 1 exit status
16:33:47 Build Finished (took 830ms)
Linque com a biblioteca wx… mesma coisa para qualquer outra.
@Kronal, obrigado mas não consegui … pesquisei mas não encontrei um roteiro que satisfaz.
Eu uso MinGW + Eclipse no Windows. Vou abrir um novo tópico, melhor.
Apenas mais uma pergunta …
Quando executo direto pela IDE (no caso Eclipse), meu “Hello World” abre bonitinho diretamente Windows … mas quando executo diretamente pelo diretório no Explorer, ele executa depois de abrir o console (DOS). Alguém sabe porquê?
Talvez o tipo de sua aplicação deve ser console. No windows tu tem que ter um WinMain()
ou equivalente. E as vezes diferentes frameworks usam diferentes métodos pra isso.
Sim, certeza que o tipo está como Console … até um exemplo com WinMain() dá nisso rs
Eu acredito que seja algum parâmetro de compilação do g++, -mwindows talvez.
Preciso estudar mais sobre isto.