wxRuby 0.5.0 has been released and is now available for download from RubyForge at http://wxruby.rubyforge.org/ This release includes binary builds for Max OS X and MS Windows. Please report any bugs or feature requests here: http://rubyforge.org/tracker/?group_id=35 Changes in this release include: * Added XRC (Xml Resource File) support. * Added totally awesome HTML widget from Tobi Gruetzmacher. * Fix crash in ListCtrl#on_get_item_xxx * Fix crash in TreeCtrl#on_compare_items * Remove all get/set_client_data and get_event_object methods (they were broken anyway) * Patched problem with MSVC.NET that caused build problems -------------- What is wxRuby? wxRuby is an open source GUI toolkit for the Ruby programming language. It provides a Ruby interface to the cross-platform wxWidgets C++ GUI framework (formerly known as wxWindows). wxRuby is intended to dramatically extend Ruby''s usefulness in rapid prototyping and general UI development. wxWidgets is a mature, cross-platform GUI toolkit that uses native GUI widgets. This means that wxRuby applications can integrate seamlessly on each supported platform, and can behave like the user expects. Curt
Tom Copeland
2004-Aug-27 17:17 UTC
[Wxruby-users] Re: [ANN] wxRuby 0.5.0 has been released!
On Thu, 2004-08-26 at 12:50, Curt Hibbs wrote:> wxRuby 0.5.0 has been released and is now available for > download from RubyForge at http://wxruby.rubyforge.org/ > This release includes binary builds for Max OS X and > MS Windows.FWIW, I also posted a BitTorrent of the Windows package here: http://bt.rubyforge.org/ It''s not a big deal - this file is only 1.4 MB - but if anyone wants to help seed, thanks. Yours, Tom
I''ve all my files to compile, but one wont link....Here is the output: c++ -shared -s -L/usr/local/lib -lwxmsw242d -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o wxruby.so htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o bitmap.o button.o calendar.o checkbox.o choice.o colour.o colourdata.o colourdialog.o combobox.o const.o date.o dialog.o dirdialog.o event.o evthandler.o filedialog.o font.o fontdata.o fontdialog.o frame.o gauge.o layout.o listbox.o menu.o menubar.o messagedialog.o point.o radio.o rect.o size.o sizer.o slider.o spin.o statictext.o textctrl.o timer.o validator.o window.o icon.o artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o dc.o brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o toolbar.o image.o palette.o treectrl.o classinfo.o splitterwindow.o methods.o staticbitmap.o control.o grid.o menuitem.o textattr.o dataformat.o togglebutton.o dropsource.o droptarget.o textdroptarget.o filedroptarget.o filedataobject.o textdataobject.o dataobject.o dataobjectsimple.o dynamiccast.o mdiparentframe.o mdiclientwindow.o mdichildframe.o xmlresource.o -lruby -lcrypt -lwxmsw242d xmlresource.o(.text+0x385): In function `_ZN13WxXmlResource5s_GetEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:72: undefined reference to `wxXmlResource::Get()'' xmlresource.o(.text+0x4bc): In function `_ZN13WxXmlResource10LoadDialogEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:96: undefined reference to `wxXmlResource::LoadDialog(wxWindow*, wxString const&)'' xmlresource.o(.text+0x6a3): In function `_ZN13WxXmlResource18LoadDialogSubclassEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:124: undefined reference to `wxXmlResource::LoadDialog(wxDialog*, wxWindow*, wxString const&)'' xmlresource.o(.text+0x86c): In function `_ZN13WxXmlResource9LoadPanelEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:146: undefined reference to `wxXmlResource::LoadPanel(wxWindow*, wxString const&)'' xmlresource.o(.text+0xa53): In function `_ZN13WxXmlResource17LoadPanelSubclassEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:174: undefined reference to `wxXmlResource::LoadPanel(wxPanel*, wxWindow*, wxString const&)'' xmlresource.o(.text+0xc1c): In function `_ZN13WxXmlResource9LoadFrameEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:196: undefined reference to `wxXmlResource::LoadFrame(wxWindow*, wxString const&)'' xmlresource.o(.text+0xe03): In function `_ZN13WxXmlResource17LoadFrameSubclassEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:224: undefined reference to `wxXmlResource::LoadFrame(wxFrame*, wxWindow*, wxString const&)'' xmlresource.o(.text+0xfeb): In function `_ZN13WxXmlResource4LoadEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:256: undefined reference to `wxXmlResource::Load(wxString const&)'' xmlresource.o(.text+0x10bd): In function `_ZN13WxXmlResource15InitAllHandlersEiPmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:270: undefined reference to `wxXmlResource::InitAllHandlers()'' xmlresource.o(.text+0x10eb): In function `_ZN13WxXmlResource10s_GetXRCIDEmm'': /usr/src/wxruby-0.5-src/src/xmlresource.cpp:296: undefined reference to `wxXmlResource::GetXRCID(char const*)'' collect2: ld returned 1 exit status make: *** [wxruby.so] Error 1 I''ve tried all I can, does anyone with more c++, and linking experience have any clues where I should look? Thanks, Zach
You''re trying to build in XRC support, but you haven''t compiled XRC (which is a seperate library). Two ways through this 1) Go into the extconf.rb file and set "$use_xrc" to false. Re-run it and then rebuild 2) Go into wxWidgets contrib directory, and build the XRC library. (wxWidgets/contrib/src/xrc). Nick Zach Dennis wrote:> I''ve all my files to compile, but one wont link....Here is the output: > > c++ -shared -s -L/usr/local/lib -lwxmsw242d > -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o wxruby.so > htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o bitmap.o > button.o calendar.o checkbox.o choice.o colour.o colourdata.o > colourdialog.o combobox.o const.o date.o dialog.o dirdialog.o event.o > evthandler.o filedialog.o font.o fontdata.o fontdialog.o frame.o > gauge.o layout.o listbox.o menu.o menubar.o messagedialog.o point.o > radio.o rect.o size.o sizer.o slider.o spin.o statictext.o textctrl.o > timer.o validator.o window.o icon.o artprovider.o log.o listctrl.o > list.o panel.o scrolledwindow.o dc.o brush.o pen.o caret.o statusbar.o > ownerdrawn.o config.o region.o cursor.o notebook.o tooltip.o mask.o > socket.o url.o stream.o toolbar.o image.o palette.o treectrl.o > classinfo.o splitterwindow.o methods.o staticbitmap.o control.o grid.o > menuitem.o textattr.o dataformat.o togglebutton.o dropsource.o > droptarget.o textdroptarget.o filedroptarget.o filedataobject.o > textdataobject.o dataobject.o dataobjectsimple.o dynamiccast.o > mdiparentframe.o mdiclientwindow.o mdichildframe.o xmlresource.o > -lruby -lcrypt -lwxmsw242d > > xmlresource.o(.text+0x385): In function `_ZN13WxXmlResource5s_GetEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:72: undefined reference to > `wxXmlResource::Get()'' > xmlresource.o(.text+0x4bc): In function > `_ZN13WxXmlResource10LoadDialogEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:96: undefined reference to > `wxXmlResource::LoadDialog(wxWindow*, wxString const&)'' > xmlresource.o(.text+0x6a3): In function > `_ZN13WxXmlResource18LoadDialogSubclassEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:124: undefined reference > to `wxXmlResource::LoadDialog(wxDialog*, wxWindow*, wxString const&)'' > xmlresource.o(.text+0x86c): In function > `_ZN13WxXmlResource9LoadPanelEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:146: undefined reference > to `wxXmlResource::LoadPanel(wxWindow*, wxString const&)'' > xmlresource.o(.text+0xa53): In function > `_ZN13WxXmlResource17LoadPanelSubclassEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:174: undefined reference > to `wxXmlResource::LoadPanel(wxPanel*, wxWindow*, wxString const&)'' > xmlresource.o(.text+0xc1c): In function > `_ZN13WxXmlResource9LoadFrameEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:196: undefined reference > to `wxXmlResource::LoadFrame(wxWindow*, wxString const&)'' > xmlresource.o(.text+0xe03): In function > `_ZN13WxXmlResource17LoadFrameSubclassEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:224: undefined reference > to `wxXmlResource::LoadFrame(wxFrame*, wxWindow*, wxString const&)'' > xmlresource.o(.text+0xfeb): In function `_ZN13WxXmlResource4LoadEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:256: undefined reference > to `wxXmlResource::Load(wxString const&)'' > xmlresource.o(.text+0x10bd): In function > `_ZN13WxXmlResource15InitAllHandlersEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:270: undefined reference > to `wxXmlResource::InitAllHandlers()'' > xmlresource.o(.text+0x10eb): In function > `_ZN13WxXmlResource10s_GetXRCIDEmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:296: undefined reference > to `wxXmlResource::GetXRCID(char const*)'' > collect2: ld returned 1 exit status > make: *** [wxruby.so] Error 1 > > > > > I''ve tried all I can, does anyone with more c++, and linking > experience have any clues where I should look? Thanks, > > Zach > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >
Nick wrote:> > You''re trying to build in XRC support, but you haven''t compiled XRC > (which is a seperate library). Two ways through this > > 1) Go into the extconf.rb file and set "$use_xrc" to false. Re-run it > and then rebuildI did this and it compiled and created wxruby.so fine, but I cannot use the .so. I get the error: /usr/local/lib/ruby/site_ruby/1.8/i386-cygwin/wxruby.so: dlopen: Win32 error 126 - /usr/local/lib/ruby/site_ruby/1.8/i386-cygwin/wxruby.so (LoadError) from sizertest.rb:20 dlopen appears to be a cygwin specific thing, but from what I''ve been reading this problem has to do with how wxruby.so was created, so I am going to try to recompile wxruby with some different options, but i''m open for more suggestions if you have them.> 2) Go into wxWidgets contrib directory, and build the XRC library. > (wxWidgets/contrib/src/xrc).I tried to do this as well, but it complains: Can''t open .lib file: lib/wxmsw242d.dll.a Although the file exists!> > NickThanks for your feedback, Zach
What options did you use when building wxWidgets? Nick Zach Dennis wrote:> Nick wrote: > >> >> You''re trying to build in XRC support, but you haven''t compiled XRC >> (which is a seperate library). Two ways through this >> >> 1) Go into the extconf.rb file and set "$use_xrc" to false. Re-run it >> and then rebuild > > > I did this and it compiled and created wxruby.so fine, but I cannot > use the .so. I get the error: > > /usr/local/lib/ruby/site_ruby/1.8/i386-cygwin/wxruby.so: dlopen: Win32 > error 126 > - /usr/local/lib/ruby/site_ruby/1.8/i386-cygwin/wxruby.so (LoadError) > from sizertest.rb:20 > > dlopen appears to be a cygwin specific thing, but from what I''ve been > reading this problem has to do with how wxruby.so was created, so I am > going to try to recompile wxruby with some different options, but i''m > open for more suggestions if you have them. > > >> 2) Go into wxWidgets contrib directory, and build the XRC library. >> (wxWidgets/contrib/src/xrc). > > > I tried to do this as well, but it complains: > > Can''t open .lib file: lib/wxmsw242d.dll.a > > Although the file exists! > >> >> Nick > > > Thanks for your feedback, > > Zach > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >
> > I tried to do this as well, but it complains: > > Can''t open .lib file: lib/wxmsw242d.dll.a > > Although the file exists!Did you compile wxWidgets as a DLL or a static lib? Life is a whole lot easier if you use the following options from ./configure configure --disable-shared --enable-static This allows wxRuby to statically link in wxWidgets, only requiring one .so file to carry around. Nick
Nick wrote:> > What options did you use when building wxWidgets?./configure --with-msw --enable-debug Zach
Nick wrote:> >> >> I tried to do this as well, but it complains: >> >> Can''t open .lib file: lib/wxmsw242d.dll.a >> >> Although the file exists! > > > Did you compile wxWidgets as a DLL or a static lib? Life is a whole > lot easier if you use the following options from ./configure > > > configure --disable-shared --enable-static > > This allows wxRuby to statically link in wxWidgets, only requiring one > ..so file to carry around.ok, i recompiled with those options for wxWindows, but now I get linking errors with wxruby.so c++ -shared -s `wx-config --libs` -Wl,--version-script,./version-script -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o wxruby.so htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o bitmap.o button.o calendar.o checkbox.o choice.o colour.o colourdata.o colourdialog.o combobox.o const.o date.o dialog.o dirdialog.o event.o evthandler.o filedialog.o font.o fontdata.o fontdialog.o frame.o gauge.o layout.o listbox.o menu.o menubar.o messagedialog.o point.o radio.o rect.o size.o sizer.o slider.o spin.o statictext.o textctrl.o timer.o validator.o window.o icon.o artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o dc.o brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o toolbar.o image.o palette.o treectrl.o classinfo.o splitterwindow.o methods.o staticbitmap.o control.o grid.o menuitem.o textattr.o dataformat.o togglebutton.o dropsource.o droptarget.o textdroptarget.o filedroptarget.o filedataobject.o textdataobject.o dataobject.o dataobjectsimple.o dynamiccast.o mdiparentframe.o mdiclientwindow.o mdichildframe.o -lruby -lcrypt htmlprocessor.o(.text+0x3d1): In function `_ZN15WxHtmlProcessor7ProcessEiPmm'': /usr/src/wxWindows-2.4.2/include/wx/string.h:249: undefined reference to `__imp__wxEmptyString'' htmlprocessor.o(.text+0x402): In function `_ZN15WxHtmlProcessor7ProcessEiPmm'': /usr/src/wxruby-0.5-src/src/htmlprocessor.cpp:82: undefined reference to `__imp___ZN8wxStringaSEPKc'' htmlprocessor.o(.text+0x705): In function `_ZNK21wxHtmlProcessorHelper7ProcessERK8wxString'': /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference to `__imp___ZN8wxString8InitWithEPKcjj'' htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x14): In function `_ZNK15wxHtmlProcessor11GetPriorityEv'': /usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxObject::CreateRefData() const'' htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x18):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxObject::CloneRefData(wxObjectRefData const*) const'' htmlprocessor.o(.text$_ZNK15wxHtmlProcessor12GetClassInfoEv+0x4):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `__imp___ZN15wxHtmlProcessor23sm_classwxHtmlProcessorE'' etc.. Note that I haven''t recompiled wxwindows or wxruby since the --enable-static change, i have just been relinking the object files. Zach
> ok, i recompiled with those options for wxWindows, but now I getlinking errors with wxruby.so Note that this line should say.... I ran ./configure with the options you suggested for static linking, then i re-ran make. I didn''t recompile the source files, i just relinked the static object files. It didn''t complain and it gave me libmsw242d.dll.a Zach
Zach Dennis wrote:> > ok, i recompiled with those options for wxWindows, but now I get > linking errors with wxruby.so > > Note that this line should say.... > > I ran ./configure with the options you suggested for static linking, > then i re-ran make. I didn''t recompile the source files, i just > relinked the static object files. It didn''t complain and it gave me > libmsw242d.dll.aYou need to do a ''make clean'' first for both wxWidgets and wxRuby. It will not work otherwise. Nick
I am still getting linking errors as before even with the static linking on wxWindows. Any other ideas? wxWindows -------------------------- ./configure --enable-static --disable-shared make make install wxRuby ---------------------------- ruby extconf.rb make Thanks, Zach p.s. - i have tried to edit the extconf.rb so that the makefile created is the same as the one for linux, and the one for mingw. Both times I get to this point and it errors out. c++ -shared -s -L/usr/local/lib /usr/local/lib/libwxmsw242d.a -ljpeg -ltiff -lz -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32 -lkernel32 -luser32 -lgdi32 -lcomdlg32 -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o wxruby.so htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o bitmap.o button.o calendar.o checkbox.o choice.o colour.o colourdata.o colourdialog.o combobox.o const.o date.o dialog.o dirdialog.o event.o evthandler.o filedialog.o font.o fontdata.o fontdialog.o frame.o gauge.o layout.o listbox.o menu.o menubar.o messagedialog.o point.o radio.o rect.o size.o sizer.o slider.o spin.o statictext.o textctrl.o timer.o validator.o window.o icon.o artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o dc.o brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o toolbar.o image.o palette.o treectrl.o classinfo.o splitterwindow.o methods.o staticbitmap.o control.o grid.o menuitem.o textattr.o dataformat.o togglebutton.o dropsource.o droptarget.o textdroptarget.o filedroptarget.o filedataobject.o textdataobject.o dataobject.o dataobjectsimple.o dynamiccast.o mdiparentframe.o mdiclientwindow.o mdichildframe.o -lruby -lcrypt htmlprocessor.o(.text+0x3ca): In function `_ZN15WxHtmlProcessor7ProcessEiPmm'': /usr/src/wxWindows-2.4.2/include/wx/string.h:249: undefined reference to `_wxEmptyString'' htmlprocessor.o(.text+0x3f8): In function `_ZN15WxHtmlProcessor7ProcessEiPmm'': /usr/src/wxruby-0.5-src/src/htmlprocessor.cpp:82: undefined reference to `wxString::operator=(char const*)'' htmlprocessor.o(.text+0x6f4): In function `_ZNK21wxHtmlProcessorHelper7ProcessERK8wxString'': /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference to `wxString::InitWith(char const*, unsigned, unsigned)'' htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x14): In function `_ZNK15wxHtmlProcessor11GetPriorityEv'': /usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxObject::CreateRefData() const'' htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x18):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxObject::CloneRefData(wxObjectRefData const*) const'' htmlprocessor.o(.text$_ZNK15wxHtmlProcessor12GetClassInfoEv+0x4):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxHtmlProcessor::sm_classwxHtmlProcessor'' htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0xb):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `vtable for wxObject'' htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0x13):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxObject::UnRef()'' htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0xe):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `vtable for wxObject'' htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0x16):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined reference to `wxObject::UnRef()'' htmlwindow.o(.text+0x697): In function `_ZN12WxHtmlWindow12constructor0EiPmm'': /usr/src/wxruby-0.5-src/src/htmlwindow.cpp:110: undefined reference to `_wxDefaultPosition'' htmlwindow.o(.text+0x6a6):/usr/src/wxruby-0.5-src/src/htmlwindow.cpp:113: undefined reference to `_wxDefaultSize'' htmlwindow.o(.text+0x710): In function `_ZN12WxHtmlWindow12constructor0EiPmm'': /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference to `wxString::InitWith(char const*, unsigned, unsigned)'' etc...
I''m installing cygwin now. I''ll send you some more info when I get some. Nick Zach Dennis wrote:> I am still getting linking errors as before even with the static > linking on wxWindows. Any other ideas? > > wxWindows > -------------------------- > ./configure --enable-static --disable-shared > make > make install > > wxRuby > ---------------------------- > ruby extconf.rb > make > > Thanks, > > Zach > > p.s. - i have tried to edit the extconf.rb so that the makefile > created is the same as the one for linux, and the one for mingw. Both > times I get to this point and it errors out. > > > c++ -shared -s -L/usr/local/lib /usr/local/lib/libwxmsw242d.a > -ljpeg -ltiff -lz -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool > -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32 -lkernel32 > -luser32 -lgdi32 -lcomdlg32 -Wl,--enable-auto-import,--export-all > -L"/usr/local/lib" -o wxruby.so htmlprocessor.o htmlwindow.o > htmleasyprinting.o wx.o app.o bitmap.o button.o calendar.o checkbox.o > choice.o colour.o colourdata.o colourdialog.o combobox.o const.o > date.o dialog.o dirdialog.o event.o evthandler.o filedialog.o font.o > fontdata.o fontdialog.o frame.o gauge.o layout.o listbox.o menu.o > menubar.o messagedialog.o point.o radio.o rect.o size.o sizer.o > slider.o spin.o statictext.o textctrl.o timer.o validator.o window.o > icon.o artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o > dc.o brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o > cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o toolbar.o > image.o palette.o treectrl.o classinfo.o splitterwindow.o methods.o > staticbitmap.o control.o grid.o menuitem.o textattr.o dataformat.o > togglebutton.o dropsource.o droptarget.o textdroptarget.o > filedroptarget.o filedataobject.o textdataobject.o dataobject.o > dataobjectsimple.o dynamiccast.o mdiparentframe.o mdiclientwindow.o > mdichildframe.o -lruby -lcrypt > > htmlprocessor.o(.text+0x3ca): In function > `_ZN15WxHtmlProcessor7ProcessEiPmm'': > /usr/src/wxWindows-2.4.2/include/wx/string.h:249: undefined reference > to `_wxEmptyString'' > htmlprocessor.o(.text+0x3f8): In function > `_ZN15WxHtmlProcessor7ProcessEiPmm'': > /usr/src/wxruby-0.5-src/src/htmlprocessor.cpp:82: undefined reference > to `wxString::operator=(char const*)'' > htmlprocessor.o(.text+0x6f4): In function > `_ZNK21wxHtmlProcessorHelper7ProcessERK8wxString'': > /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference > to `wxString::InitWith(char const*, unsigned, unsigned)'' > htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x14): In function > `_ZNK15wxHtmlProcessor11GetPriorityEv'': > /usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined > reference to `wxObject::CreateRefData() const'' > htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x18):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: > undefined reference to `wxObject::CloneRefData(wxObjectRefData const*) > const'' > htmlprocessor.o(.text$_ZNK15wxHtmlProcessor12GetClassInfoEv+0x4):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: > undefined reference to `wxHtmlProcessor::sm_classwxHtmlProcessor'' > htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0xb):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: > undefined reference to `vtable for wxObject'' > htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0x13):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: > undefined reference to `wxObject::UnRef()'' > htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0xe):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: > undefined reference to `vtable for wxObject'' > htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0x16):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: > undefined reference to `wxObject::UnRef()'' > htmlwindow.o(.text+0x697): In function > `_ZN12WxHtmlWindow12constructor0EiPmm'': > /usr/src/wxruby-0.5-src/src/htmlwindow.cpp:110: undefined reference to > `_wxDefaultPosition'' > htmlwindow.o(.text+0x6a6):/usr/src/wxruby-0.5-src/src/htmlwindow.cpp:113: > undefined reference to `_wxDefaultSize'' > htmlwindow.o(.text+0x710): In function > `_ZN12WxHtmlWindow12constructor0EiPmm'': > /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference > to `wxString::InitWith(char const*, unsigned, unsigned)'' > > etc... > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >
I just learned about c++filt last week: ykphuah@hp:~$ echo _ZN13WxXmlResource5s_GetEiPmm | c++filt WxXmlResource::s_Get(int, unsigned long*, unsigned long) Might help in debugging the problems. Cheers, Phuah Yee Keat Zach Dennis wrote:> I''ve all my files to compile, but one wont link....Here is the output: > > c++ -shared -s -L/usr/local/lib -lwxmsw242d > -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o wxruby.so > htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o bitmap.o > button.o calendar.o checkbox.o choice.o colour.o colourdata.o > colourdialog.o combobox.o const.o date.o dialog.o dirdialog.o event.o > evthandler.o filedialog.o font.o fontdata.o fontdialog.o frame.o gauge.o > layout.o listbox.o menu.o menubar.o messagedialog.o point.o radio.o > rect.o size.o sizer.o slider.o spin.o statictext.o textctrl.o timer.o > validator.o window.o icon.o artprovider.o log.o listctrl.o list.o > panel.o scrolledwindow.o dc.o brush.o pen.o caret.o statusbar.o > ownerdrawn.o config.o region.o cursor.o notebook.o tooltip.o mask.o > socket.o url.o stream.o toolbar.o image.o palette.o treectrl.o > classinfo.o splitterwindow.o methods.o staticbitmap.o control.o grid.o > menuitem.o textattr.o dataformat.o togglebutton.o dropsource.o > droptarget.o textdroptarget.o filedroptarget.o filedataobject.o > textdataobject.o dataobject.o dataobjectsimple.o dynamiccast.o > mdiparentframe.o mdiclientwindow.o mdichildframe.o xmlresource.o > -lruby -lcrypt -lwxmsw242d > > xmlresource.o(.text+0x385): In function `_ZN13WxXmlResource5s_GetEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:72: undefined reference to > `wxXmlResource::Get()'' > xmlresource.o(.text+0x4bc): In function > `_ZN13WxXmlResource10LoadDialogEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:96: undefined reference to > `wxXmlResource::LoadDialog(wxWindow*, wxString const&)'' > xmlresource.o(.text+0x6a3): In function > `_ZN13WxXmlResource18LoadDialogSubclassEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:124: undefined reference to > `wxXmlResource::LoadDialog(wxDialog*, wxWindow*, wxString const&)'' > xmlresource.o(.text+0x86c): In function > `_ZN13WxXmlResource9LoadPanelEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:146: undefined reference to > `wxXmlResource::LoadPanel(wxWindow*, wxString const&)'' > xmlresource.o(.text+0xa53): In function > `_ZN13WxXmlResource17LoadPanelSubclassEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:174: undefined reference to > `wxXmlResource::LoadPanel(wxPanel*, wxWindow*, wxString const&)'' > xmlresource.o(.text+0xc1c): In function > `_ZN13WxXmlResource9LoadFrameEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:196: undefined reference to > `wxXmlResource::LoadFrame(wxWindow*, wxString const&)'' > xmlresource.o(.text+0xe03): In function > `_ZN13WxXmlResource17LoadFrameSubclassEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:224: undefined reference to > `wxXmlResource::LoadFrame(wxFrame*, wxWindow*, wxString const&)'' > xmlresource.o(.text+0xfeb): In function `_ZN13WxXmlResource4LoadEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:256: undefined reference to > `wxXmlResource::Load(wxString const&)'' > xmlresource.o(.text+0x10bd): In function > `_ZN13WxXmlResource15InitAllHandlersEiPmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:270: undefined reference to > `wxXmlResource::InitAllHandlers()'' > xmlresource.o(.text+0x10eb): In function > `_ZN13WxXmlResource10s_GetXRCIDEmm'': > /usr/src/wxruby-0.5-src/src/xmlresource.cpp:296: undefined reference to > `wxXmlResource::GetXRCID(char const*)'' > collect2: ld returned 1 exit status > make: *** [wxruby.so] Error 1 > > > > > I''ve tried all I can, does anyone with more c++, and linking experience > have any clues where I should look? Thanks, > > Zach > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users
It looks like ruby is forcing a linker option that is upsetting wxWidgets compiled in static mode. It''s hard for me to tell because for some reason my version of cygwin isn''t finding IUnknown in OLE32.lib. Does anybody know anything about this? Nick Nick wrote:> > I''m installing cygwin now. I''ll send you some more info when I get some. > > Nick > > Zach Dennis wrote: > >> I am still getting linking errors as before even with the static >> linking on wxWindows. Any other ideas? >> >> wxWindows >> -------------------------- >> ./configure --enable-static --disable-shared >> make >> make install >> >> wxRuby >> ---------------------------- >> ruby extconf.rb >> make >> >> Thanks, >> >> Zach >> >> p.s. - i have tried to edit the extconf.rb so that the makefile >> created is the same as the one for linux, and the one for mingw. Both >> times I get to this point and it errors out. >> >> >> c++ -shared -s -L/usr/local/lib /usr/local/lib/libwxmsw242d.a >> -ljpeg -ltiff -lz -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool >> -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32 >> -lkernel32 -luser32 -lgdi32 -lcomdlg32 >> -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o >> wxruby.so htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o >> bitmap.o button.o calendar.o checkbox.o choice.o colour.o >> colourdata.o colourdialog.o combobox.o const.o date.o dialog.o >> dirdialog.o event.o evthandler.o filedialog.o font.o fontdata.o >> fontdialog.o frame.o gauge.o layout.o listbox.o menu.o menubar.o >> messagedialog.o point.o radio.o rect.o size.o sizer.o slider.o spin.o >> statictext.o textctrl.o timer.o validator.o window.o icon.o >> artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o dc.o >> brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o >> cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o >> toolbar.o image.o palette.o treectrl.o classinfo.o splitterwindow.o >> methods.o staticbitmap.o control.o grid.o menuitem.o textattr.o >> dataformat.o togglebutton.o dropsource.o droptarget.o >> textdroptarget.o filedroptarget.o filedataobject.o textdataobject.o >> dataobject.o dataobjectsimple.o dynamiccast.o mdiparentframe.o >> mdiclientwindow.o mdichildframe.o -lruby -lcrypt >> >> htmlprocessor.o(.text+0x3ca): In function >> `_ZN15WxHtmlProcessor7ProcessEiPmm'': >> /usr/src/wxWindows-2.4.2/include/wx/string.h:249: undefined reference >> to `_wxEmptyString'' >> htmlprocessor.o(.text+0x3f8): In function >> `_ZN15WxHtmlProcessor7ProcessEiPmm'': >> /usr/src/wxruby-0.5-src/src/htmlprocessor.cpp:82: undefined reference >> to `wxString::operator=(char const*)'' >> htmlprocessor.o(.text+0x6f4): In function >> `_ZNK21wxHtmlProcessorHelper7ProcessERK8wxString'': >> /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference >> to `wxString::InitWith(char const*, unsigned, unsigned)'' >> htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x14): In function >> `_ZNK15wxHtmlProcessor11GetPriorityEv'': >> /usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined >> reference to `wxObject::CreateRefData() const'' >> htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x18):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >> undefined reference to `wxObject::CloneRefData(wxObjectRefData >> const*) const'' >> htmlprocessor.o(.text$_ZNK15wxHtmlProcessor12GetClassInfoEv+0x4):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >> undefined reference to `wxHtmlProcessor::sm_classwxHtmlProcessor'' >> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0xb):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >> undefined reference to `vtable for wxObject'' >> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0x13):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >> undefined reference to `wxObject::UnRef()'' >> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0xe):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >> undefined reference to `vtable for wxObject'' >> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0x16):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >> undefined reference to `wxObject::UnRef()'' >> htmlwindow.o(.text+0x697): In function >> `_ZN12WxHtmlWindow12constructor0EiPmm'': >> /usr/src/wxruby-0.5-src/src/htmlwindow.cpp:110: undefined reference >> to `_wxDefaultPosition'' >> htmlwindow.o(.text+0x6a6):/usr/src/wxruby-0.5-src/src/htmlwindow.cpp:113: >> undefined reference to `_wxDefaultSize'' >> htmlwindow.o(.text+0x710): In function >> `_ZN12WxHtmlWindow12constructor0EiPmm'': >> /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined reference >> to `wxString::InitWith(char const*, unsigned, unsigned)'' >> >> etc... >> >> _______________________________________________ >> wxruby-users mailing list >> wxruby-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/wxruby-users >> >> >> > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >
Nick wrote:> > It looks like ruby is forcing a linker option that is upsetting > wxWidgets compiled in static mode. It''s hard for me to tell because > for some reason my version of cygwin isn''t finding IUnknown in > OLE32.lib. Does anybody know anything about this? > > Nick >If this is dealing with compiling ruby in cygwin, then one of the in the win32ole.c file in the win32ole folder needs to have the following line added: include <olectl.h> see: http://www.talkaboutprogramming.com/group/comp.lang.ruby/messages/102936.html for more info. Zach> > Nick wrote: > >> >> I''m installing cygwin now. I''ll send you some more info when I get some. >> >> Nick >> >> Zach Dennis wrote: >> >>> I am still getting linking errors as before even with the static >>> linking on wxWindows. Any other ideas? >>> >>> wxWindows >>> -------------------------- >>> ./configure --enable-static --disable-shared >>> make >>> make install >>> >>> wxRuby >>> ---------------------------- >>> ruby extconf.rb >>> make >>> >>> Thanks, >>> >>> Zach >>> >>> p.s. - i have tried to edit the extconf.rb so that the makefile >>> created is the same as the one for linux, and the one for mingw. >>> Both times I get to this point and it errors out. >>> >>> >>> c++ -shared -s -L/usr/local/lib /usr/local/lib/libwxmsw242d.a >>> -ljpeg -ltiff -lz -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool >>> -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32 >>> -lkernel32 -luser32 -lgdi32 -lcomdlg32 >>> -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o >>> wxruby.so htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o >>> bitmap.o button.o calendar.o checkbox.o choice.o colour.o >>> colourdata.o colourdialog.o combobox.o const.o date.o dialog.o >>> dirdialog.o event.o evthandler.o filedialog.o font.o fontdata.o >>> fontdialog.o frame.o gauge.o layout.o listbox.o menu.o menubar.o >>> messagedialog.o point.o radio.o rect.o size.o sizer.o slider.o >>> spin.o statictext.o textctrl.o timer.o validator.o window.o icon.o >>> artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o dc.o >>> brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o >>> cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o >>> toolbar.o image.o palette.o treectrl.o classinfo.o splitterwindow.o >>> methods.o staticbitmap.o control.o grid.o menuitem.o textattr.o >>> dataformat.o togglebutton.o dropsource.o droptarget.o >>> textdroptarget.o filedroptarget.o filedataobject.o textdataobject.o >>> dataobject.o dataobjectsimple.o dynamiccast.o mdiparentframe.o >>> mdiclientwindow.o mdichildframe.o -lruby -lcrypt >>> >>> htmlprocessor.o(.text+0x3ca): In function >>> `_ZN15WxHtmlProcessor7ProcessEiPmm'': >>> /usr/src/wxWindows-2.4.2/include/wx/string.h:249: undefined >>> reference to `_wxEmptyString'' >>> htmlprocessor.o(.text+0x3f8): In function >>> `_ZN15WxHtmlProcessor7ProcessEiPmm'': >>> /usr/src/wxruby-0.5-src/src/htmlprocessor.cpp:82: undefined >>> reference to `wxString::operator=(char const*)'' >>> htmlprocessor.o(.text+0x6f4): In function >>> `_ZNK21wxHtmlProcessorHelper7ProcessERK8wxString'': >>> /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined >>> reference to `wxString::InitWith(char const*, unsigned, unsigned)'' >>> htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x14): In >>> function `_ZNK15wxHtmlProcessor11GetPriorityEv'': >>> /usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined >>> reference to `wxObject::CreateRefData() const'' >>> htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x18):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxObject::CloneRefData(wxObjectRefData >>> const*) const'' >>> htmlprocessor.o(.text$_ZNK15wxHtmlProcessor12GetClassInfoEv+0x4):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxHtmlProcessor::sm_classwxHtmlProcessor'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0xb):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `vtable for wxObject'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0x13):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxObject::UnRef()'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0xe):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `vtable for wxObject'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0x16):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxObject::UnRef()'' >>> htmlwindow.o(.text+0x697): In function >>> `_ZN12WxHtmlWindow12constructor0EiPmm'': >>> /usr/src/wxruby-0.5-src/src/htmlwindow.cpp:110: undefined reference >>> to `_wxDefaultPosition'' >>> htmlwindow.o(.text+0x6a6):/usr/src/wxruby-0.5-src/src/htmlwindow.cpp:113: >>> undefined reference to `_wxDefaultSize'' >>> htmlwindow.o(.text+0x710): In function >>> `_ZN12WxHtmlWindow12constructor0EiPmm'': >>> /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined >>> reference to `wxString::InitWith(char const*, unsigned, unsigned)'' >>> >>> etc... >>> >>> _______________________________________________ >>> wxruby-users mailing list >>> wxruby-users@rubyforge.org >>> http://rubyforge.org/mailman/listinfo/wxruby-users >>> >>> >>> >> >> _______________________________________________ >> wxruby-users mailing list >> wxruby-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/wxruby-users >> >> >> > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > >
I am thinking yor OLE32.lib problem has nothign to do with what i just posted. Sorry for wasted space. I''m not a big compile / linking debugging sort of guy....yet. Zach
I can see that cygwin support doesn''t come for free with MinGW support. I''m going to need to add a section in extconf.rb for finessing the compiler options for cygwin. In the meantime, I recommend downloading MinGW and building wxWidgets/wxruby using that. Nick Nick wrote:> > It looks like ruby is forcing a linker option that is upsetting > wxWidgets compiled in static mode. It''s hard for me to tell because > for some reason my version of cygwin isn''t finding IUnknown in > OLE32.lib. Does anybody know anything about this? > > Nick > > > Nick wrote: > >> >> I''m installing cygwin now. I''ll send you some more info when I get some. >> >> Nick >> >> Zach Dennis wrote: >> >>> I am still getting linking errors as before even with the static >>> linking on wxWindows. Any other ideas? >>> >>> wxWindows >>> -------------------------- >>> ./configure --enable-static --disable-shared >>> make >>> make install >>> >>> wxRuby >>> ---------------------------- >>> ruby extconf.rb >>> make >>> >>> Thanks, >>> >>> Zach >>> >>> p.s. - i have tried to edit the extconf.rb so that the makefile >>> created is the same as the one for linux, and the one for mingw. >>> Both times I get to this point and it errors out. >>> >>> >>> c++ -shared -s -L/usr/local/lib /usr/local/lib/libwxmsw242d.a >>> -ljpeg -ltiff -lz -lrpcrt4 -loleaut32 -lole32 -luuid -lwinspool >>> -lwinmm -lshell32 -lcomctl32 -lctl3d32 -ladvapi32 -lwsock32 >>> -lkernel32 -luser32 -lgdi32 -lcomdlg32 >>> -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o >>> wxruby.so htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o >>> bitmap.o button.o calendar.o checkbox.o choice.o colour.o >>> colourdata.o colourdialog.o combobox.o const.o date.o dialog.o >>> dirdialog.o event.o evthandler.o filedialog.o font.o fontdata.o >>> fontdialog.o frame.o gauge.o layout.o listbox.o menu.o menubar.o >>> messagedialog.o point.o radio.o rect.o size.o sizer.o slider.o >>> spin.o statictext.o textctrl.o timer.o validator.o window.o icon.o >>> artprovider.o log.o listctrl.o list.o panel.o scrolledwindow.o dc.o >>> brush.o pen.o caret.o statusbar.o ownerdrawn.o config.o region.o >>> cursor.o notebook.o tooltip.o mask.o socket.o url.o stream.o >>> toolbar.o image.o palette.o treectrl.o classinfo.o splitterwindow.o >>> methods.o staticbitmap.o control.o grid.o menuitem.o textattr.o >>> dataformat.o togglebutton.o dropsource.o droptarget.o >>> textdroptarget.o filedroptarget.o filedataobject.o textdataobject.o >>> dataobject.o dataobjectsimple.o dynamiccast.o mdiparentframe.o >>> mdiclientwindow.o mdichildframe.o -lruby -lcrypt >>> >>> htmlprocessor.o(.text+0x3ca): In function >>> `_ZN15WxHtmlProcessor7ProcessEiPmm'': >>> /usr/src/wxWindows-2.4.2/include/wx/string.h:249: undefined >>> reference to `_wxEmptyString'' >>> htmlprocessor.o(.text+0x3f8): In function >>> `_ZN15WxHtmlProcessor7ProcessEiPmm'': >>> /usr/src/wxruby-0.5-src/src/htmlprocessor.cpp:82: undefined >>> reference to `wxString::operator=(char const*)'' >>> htmlprocessor.o(.text+0x6f4): In function >>> `_ZNK21wxHtmlProcessorHelper7ProcessERK8wxString'': >>> /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined >>> reference to `wxString::InitWith(char const*, unsigned, unsigned)'' >>> htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x14): In >>> function `_ZNK15wxHtmlProcessor11GetPriorityEv'': >>> /usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: undefined >>> reference to `wxObject::CreateRefData() const'' >>> htmlprocessor.o(.rdata$_ZTV21wxHtmlProcessorHelper+0x18):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxObject::CloneRefData(wxObjectRefData >>> const*) const'' >>> htmlprocessor.o(.text$_ZNK15wxHtmlProcessor12GetClassInfoEv+0x4):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxHtmlProcessor::sm_classwxHtmlProcessor'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0xb):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `vtable for wxObject'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD1Ev+0x13):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxObject::UnRef()'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0xe):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `vtable for wxObject'' >>> htmlprocessor.o(.text$_ZN21wxHtmlProcessorHelperD0Ev+0x16):/usr/src/wxWindows-2.4.2/include/wx/html/htmlproc.h: >>> undefined reference to `wxObject::UnRef()'' >>> htmlwindow.o(.text+0x697): In function >>> `_ZN12WxHtmlWindow12constructor0EiPmm'': >>> /usr/src/wxruby-0.5-src/src/htmlwindow.cpp:110: undefined reference >>> to `_wxDefaultPosition'' >>> htmlwindow.o(.text+0x6a6):/usr/src/wxruby-0.5-src/src/htmlwindow.cpp:113: >>> undefined reference to `_wxDefaultSize'' >>> htmlwindow.o(.text+0x710): In function >>> `_ZN12WxHtmlWindow12constructor0EiPmm'': >>> /usr/src/wxWindows-2.4.2/include/wx/string.h:311: undefined >>> reference to `wxString::InitWith(char const*, unsigned, unsigned)'' >>> >>> etc... >>> >>> _______________________________________________ >>> wxruby-users mailing list >>> wxruby-users@rubyforge.org >>> http://rubyforge.org/mailman/listinfo/wxruby-users >>> >>> >>> >> >> _______________________________________________ >> wxruby-users mailing list >> wxruby-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/wxruby-users >> >> >> > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >
Thanks for the tip. Out of curiosity, do you have any new <widget>.i files. It took me a while to work out a problem adding wxTextCtrl (reason = SWIG bug), but now I''m working up the list of widgets we had in wxruby-0.1 and trying to match it in wxruby swig. I''d hate to duplicate any work you''ve done. Nick Phuah Yee Keat wrote:> I just learned about c++filt last week: > > ykphuah@hp:~$ echo _ZN13WxXmlResource5s_GetEiPmm | c++filt > WxXmlResource::s_Get(int, unsigned long*, unsigned long) > > Might help in debugging the problems. > > Cheers, > Phuah Yee Keat > > Zach Dennis wrote: > >> I''ve all my files to compile, but one wont link....Here is the output: >> >> c++ -shared -s -L/usr/local/lib -lwxmsw242d >> -Wl,--enable-auto-import,--export-all -L"/usr/local/lib" -o wxruby.so >> htmlprocessor.o htmlwindow.o htmleasyprinting.o wx.o app.o bitmap.o >> button.o calendar.o checkbox.o choice.o colour.o colourdata.o >> colourdialog.o combobox.o const.o date.o dialog.o dirdialog.o event.o >> evthandler.o filedialog.o font.o fontdata.o fontdialog.o frame.o >> gauge.o layout.o listbox.o menu.o menubar.o messagedialog.o point.o >> radio.o rect.o size.o sizer.o slider.o spin.o statictext.o textctrl.o >> timer.o validator.o window.o icon.o artprovider.o log.o listctrl.o >> list.o panel.o scrolledwindow.o dc.o brush.o pen.o caret.o >> statusbar.o ownerdrawn.o config.o region.o cursor.o notebook.o >> tooltip.o mask.o socket.o url.o stream.o toolbar.o image.o palette.o >> treectrl.o classinfo.o splitterwindow.o methods.o staticbitmap.o >> control.o grid.o menuitem.o textattr.o dataformat.o togglebutton.o >> dropsource.o droptarget.o textdroptarget.o filedroptarget.o >> filedataobject.o textdataobject.o dataobject.o dataobjectsimple.o >> dynamiccast.o mdiparentframe.o mdiclientwindow.o mdichildframe.o >> xmlresource.o -lruby -lcrypt -lwxmsw242d >> >> xmlresource.o(.text+0x385): In function `_ZN13WxXmlResource5s_GetEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:72: undefined reference >> to `wxXmlResource::Get()'' >> xmlresource.o(.text+0x4bc): In function >> `_ZN13WxXmlResource10LoadDialogEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:96: undefined reference >> to `wxXmlResource::LoadDialog(wxWindow*, wxString const&)'' >> xmlresource.o(.text+0x6a3): In function >> `_ZN13WxXmlResource18LoadDialogSubclassEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:124: undefined reference >> to `wxXmlResource::LoadDialog(wxDialog*, wxWindow*, wxString const&)'' >> xmlresource.o(.text+0x86c): In function >> `_ZN13WxXmlResource9LoadPanelEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:146: undefined reference >> to `wxXmlResource::LoadPanel(wxWindow*, wxString const&)'' >> xmlresource.o(.text+0xa53): In function >> `_ZN13WxXmlResource17LoadPanelSubclassEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:174: undefined reference >> to `wxXmlResource::LoadPanel(wxPanel*, wxWindow*, wxString const&)'' >> xmlresource.o(.text+0xc1c): In function >> `_ZN13WxXmlResource9LoadFrameEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:196: undefined reference >> to `wxXmlResource::LoadFrame(wxWindow*, wxString const&)'' >> xmlresource.o(.text+0xe03): In function >> `_ZN13WxXmlResource17LoadFrameSubclassEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:224: undefined reference >> to `wxXmlResource::LoadFrame(wxFrame*, wxWindow*, wxString const&)'' >> xmlresource.o(.text+0xfeb): In function `_ZN13WxXmlResource4LoadEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:256: undefined reference >> to `wxXmlResource::Load(wxString const&)'' >> xmlresource.o(.text+0x10bd): In function >> `_ZN13WxXmlResource15InitAllHandlersEiPmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:270: undefined reference >> to `wxXmlResource::InitAllHandlers()'' >> xmlresource.o(.text+0x10eb): In function >> `_ZN13WxXmlResource10s_GetXRCIDEmm'': >> /usr/src/wxruby-0.5-src/src/xmlresource.cpp:296: undefined reference >> to `wxXmlResource::GetXRCID(char const*)'' >> collect2: ld returned 1 exit status >> make: *** [wxruby.so] Error 1 >> >> >> >> >> I''ve tried all I can, does anyone with more c++, and linking >> experience have any clues where I should look? Thanks, >> >> Zach >> >> _______________________________________________ >> wxruby-users mailing list >> wxruby-users@rubyforge.org >> http://rubyforge.org/mailman/listinfo/wxruby-users > > _______________________________________________ > wxruby-users mailing list > wxruby-users@rubyforge.org > http://rubyforge.org/mailman/listinfo/wxruby-users > > >