tmw compile error!

Ask for help regarding any technical issue or report any bug or OS independent issues.
Post Reply
flipe
Peon
Peon
Posts: 32
Joined: 18 Oct 2005, 05:16

tmw compile error!

Post by flipe »

I try to compile tmw-0.17, but I get this error:
g++ -g -O2 -o tmw `pkg-config --libs libxml-2.0` tmw-spriteset.o tmw-browserbox.o tmw-buddywindow.o tmw-button.o tmw-buy.o tmw-buysell.o tmw-chargedialog.o tmw-char_server.o tmw-char_select.o tmw-chat.o tmw-chatinput.o tmw-checkbox.o tmw-confirm_dialog.o tmw-debugwindow.o tmw-equipmentwindow.o tmw-error.o tmw-focushandler.o tmw-gui.o tmw-help.o tmw-inventorywindow.o tmw-itemcontainer.o tmw-item_amount.o tmw-listbox.o tmw-login.o tmw-menuwindow.o tmw-minimap.o tmw-ministatus.o tmw-newskill.o tmw-npc.o tmw-npc_text.o tmw-ok_dialog.o tmw-passwordfield.o tmw-playerbox.o tmw-popupmenu.o tmw-progressbar.o tmw-radiobutton.o tmw-requesttrade.o tmw-scrollarea.o tmw-sell.o tmw-setup.o tmw-skill.o tmw-slider.o tmw-status.o tmw-tabbedcontainer.o tmw-textbox.o tmw-textfield.o tmw-trade.o tmw-window.o tmw-windowcontainer.o tmw-inttextbox.o tmw-box.o tmw-vbox.o tmw-hbox.o tmw-updatewindow.o tmw-messagein.o tmw-messageout.o tmw-network.o tmw-packet.o tmw-protocol.o tmw-image.o tmw-imagewriter.o tmw-itemmanager.o tmw-mapreader.o tmw-music.o tmw-resource.o tmw-resourcemanager.o tmw-sdlimageloader.o tmw-soundeffect.o tmw-buddylist.o tmw-base64.o tmw-being.o tmw-configuration.o tmw-engine.o tmw-equipment.o tmw-floor_item.o tmw-game.o tmw-graphics.o tmw-inventory.o tmw-item.o tmw-log.o tmw-main.o tmw-map.o tmw-openglgraphics.o tmw-sound.o -L/usr/lib -Wl,-rpath,/usr/lib -lSDL -lpthread -lSDL_image -lSDL_mixer -lguichan_sdl -lGL -lguichan_opengl -L/usr/lib -lcurl -lidn -lssl -lcrypto -ldl -lssl -lcrypto -ldl -lz -lpng -lSDL_net -lSDL_mixer -lSDL_image -lxml2 -lcurl -lphysfs -lguichan -lpthread
/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/lib/libguichan_sdl.so, may conflict with libstdc++.so.6
tmw-button.o:(.gnu.linkonce.r._ZTV6Button[vtable for Button]+0x150): undefined reference to `non-virtual thunk to gcn::Button::mousePress(int, int, int)'
tmw-button.o:(.gnu.linkonce.r._ZTV6Button[vtable for Button]+0x154): undefined reference to `non-virtual thunk to gcn::Button::mouseRelease(int, int, int)'
tmw-button.o:(.gnu.linkonce.r._ZTV6Button[vtable for Button]+0x158): undefined reference to `non-virtual thunk to gcn::Button::mouseClick(int, int, int, int)'
tmw-button.o:(.gnu.linkonce.r._ZTV6Button[vtable for Button]+0x178): undefined reference to `non-virtual thunk to gcn::Button::keyPress(gcn::Key const&)'
tmw-button.o:(.gnu.linkonce.r._ZTV6Button[vtable for Button]+0x17c): undefined reference to `non-virtual thunk to gcn::Button::keyRelease(gcn::Key const&)'
tmw-chatinput.o:(.gnu.linkonce.r._ZTV9ChatInput[vtable for ChatInput]+0x148): undefined reference to `non-virtual thunk to gcn::TextField::mousePress(int, int, int)'
tmw-chatinput.o:(.gnu.linkonce.r._ZTV9ChatInput[vtable for ChatInput]+0x170): undefined reference to `non-virtual thunk to gcn::TextField::keyPress(gcn::Key const&)'
tmw-checkbox.o:(.gnu.linkonce.r._ZTV8CheckBox[vtable for CheckBox]+0x150): undefined reference to `non-virtual thunk to gcn::CheckBox::mouseClick(int, int, int, int)'
tmw-checkbox.o:(.gnu.linkonce.r._ZTV8CheckBox[vtable for CheckBox]+0x170): undefined reference to `non-virtual thunk to gcn::CheckBox::keyPress(gcn::Key const&)'
tmw-listbox.o:(.gnu.linkonce.r._ZTV7ListBox[vtable for ListBox]+0x140): undefined reference to `non-virtual thunk to gcn::ListBox::mousePress(int, int, int)'
tmw-listbox.o:(.gnu.linkonce.r._ZTV7ListBox[vtable for ListBox]+0x168): undefined reference to `non-virtual thunk to gcn::ListBox::keyPress(gcn::Key const&)'
tmw-passwordfield.o:(.gnu.linkonce.r._ZTV13PasswordField[vtable for PasswordField]+0x148): undefined reference to `non-virtual thunk to gcn::TextField::mousePress(int, int, int)'
tmw-passwordfield.o:(.gnu.linkonce.r._ZTV13PasswordField[vtable for PasswordField]+0x170): undefined reference to `non-virtual thunk to gcn::TextField::keyPress(gcn::Key const&)'
tmw-playerbox.o:(.gnu.linkonce.r._ZTV9PlayerBox[vtable for PlayerBox]+0x1d8): undefined reference to `non-virtual thunk to gcn::ScrollArea::mousePress(int, int, int)'
tmw-playerbox.o:(.gnu.linkonce.r._ZTV9PlayerBox[vtable for PlayerBox]+0x1dc): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseRelease(int, int, int)'
tmw-playerbox.o:(.gnu.linkonce.r._ZTV9PlayerBox[vtable for PlayerBox]+0x1e4): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseWheelUp(int, int)'
tmw-playerbox.o:(.gnu.linkonce.r._ZTV9PlayerBox[vtable for PlayerBox]+0x1e8): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseWheelDown(int, int)'
tmw-playerbox.o:(.gnu.linkonce.r._ZTV9PlayerBox[vtable for PlayerBox]+0x1ec): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseMotion(int, int)'
tmw-radiobutton.o:(.gnu.linkonce.r._ZTV11RadioButton[vtable for RadioButton]+0x154): undefined reference to `non-virtual thunk to gcn::RadioButton::mouseClick(int, int, int, int)'
tmw-radiobutton.o:(.gnu.linkonce.r._ZTV11RadioButton[vtable for RadioButton]+0x174): undefined reference to `non-virtual thunk to gcn::RadioButton::keyPress(gcn::Key const&)'
tmw-scrollarea.o:(.gnu.linkonce.r._ZTV10ScrollArea[vtable for ScrollArea]+0x1d8): undefined reference to `non-virtual thunk to gcn::ScrollArea::mousePress(int, int, int)'
tmw-scrollarea.o:(.gnu.linkonce.r._ZTV10ScrollArea[vtable for ScrollArea]+0x1dc): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseRelease(int, int, int)'
tmw-scrollarea.o:(.gnu.linkonce.r._ZTV10ScrollArea[vtable for ScrollArea]+0x1e4): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseWheelUp(int, int)'
tmw-scrollarea.o:(.gnu.linkonce.r._ZTV10ScrollArea[vtable for ScrollArea]+0x1e8): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseWheelDown(int, int)'
tmw-scrollarea.o:(.gnu.linkonce.r._ZTV10ScrollArea[vtable for ScrollArea]+0x1ec): undefined reference to `non-virtual thunk to gcn::ScrollArea::mouseMotion(int, int)'
tmw-slider.o:(.gnu.linkonce.r._ZTV6Slider[vtable for Slider]+0x178): undefined reference to `non-virtual thunk to gcn::Slider::mousePress(int, int, int)'
tmw-slider.o:(.gnu.linkonce.r._ZTV6Slider[vtable for Slider]+0x17c): undefined reference to `non-virtual thunk to gcn::Slider::mouseRelease(int, int, int)'
tmw-slider.o:(.gnu.linkonce.r._ZTV6Slider[vtable for Slider]+0x18c): undefined reference to `non-virtual thunk to gcn::Slider::mouseMotion(int, int)'
tmw-slider.o:(.gnu.linkonce.r._ZTV6Slider[vtable for Slider]+0x1a0): undefined reference to `non-virtual thunk to gcn::Slider::keyPress(gcn::Key const&)'
tmw-textbox.o:(.gnu.linkonce.r._ZTV7TextBox[vtable for TextBox]+0x17c): undefined reference to `non-virtual thunk to gcn::TextBox::mousePress(int, int, int)'
tmw-textbox.o:(.gnu.linkonce.r._ZTV7TextBox[vtable for TextBox]+0x1a4): undefined reference to `non-virtual thunk to gcn::TextBox::keyPress(gcn::Key const&)'
tmw-textfield.o:(.gnu.linkonce.r._ZTV9TextField[vtable for TextField]+0x148): undefined reference to `non-virtual thunk to gcn::TextField::mousePress(int, int, int)'
tmw-textfield.o:(.gnu.linkonce.r._ZTV9TextField[vtable for TextField]+0x170): undefined reference to `non-virtual thunk to gcn::TextField::keyPress(gcn::Key const&)'
tmw-inttextbox.o:(.gnu.linkonce.r._ZTV10IntTextBox[vtable for IntTextBox]+0x17c): undefined reference to `non-virtual thunk to gcn::TextBox::mousePress(int, int, int)'
collect2: ld returned 1 exit status
make[2]: ** [tmw] Erro 1
make[2]: Leaving directory `/home/comp/tmw-0.0.17/src'
make[1]: ** [all-recursive] Erro 1
make[1]: Leaving directory `/home/comp/tmw-0.0.17'
make: ** [all] Erro 2
thanks
User avatar
ElvenProgrammer
Founder
Founder
Posts: 2526
Joined: 13 Apr 2004, 19:11
Location: Italy
Contact:

Post by ElvenProgrammer »

Recompile guichan yourself or get guichan cvs, that should fix it I think
flipe
Peon
Peon
Posts: 32
Joined: 18 Oct 2005, 05:16

Post by flipe »

I try to compile guichan again!... but I get this error!
Making all in src
make[1]: Entering directory `/home/comp/guichan-0.4.0/src'
Making all in widgets
make[2]: Entering directory `/home/comp/guichan-0.4.0/src/widgets'
if /bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT button.lo -MD -MP -MF ".deps/button.Tpo" -c -o button.lo button.cpp; \
then mv -f ".deps/button.Tpo" ".deps/button.Plo"; else rm -f ".deps/button.Tpo"; exit 1; fi
mkdir .libs
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT button.lo -MD -MP -MF .deps/button.Tpo -c button.cpp -fPIC -DPIC -o .libs/button.o
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT button.lo -MD -MP -MF .deps/button.Tpo -c button.cpp -o button.o >/dev/null 2>&1
if /bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT checkbox.lo -MD -MP -MF ".deps/checkbox.Tpo" -c -o checkbox.lo checkbox.cpp; \
then mv -f ".deps/checkbox.Tpo" ".deps/checkbox.Plo"; else rm -f ".deps/checkbox.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT checkbox.lo -MD -MP -MF .deps/checkbox.Tpo -c checkbox.cpp -fPIC -DPIC -o .libs/checkbox.o
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT checkbox.lo -MD -MP -MF .deps/checkbox.Tpo -c checkbox.cpp -o checkbox.o >/dev/null 2>&1
if /bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT container.lo -MD -MP -MF ".deps/container.Tpo" -c -o container.lo container.cpp; \
then mv -f ".deps/container.Tpo" ".deps/container.Plo"; else rm -f ".deps/container.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT container.lo -MD -MP -MF .deps/container.Tpo -c container.cpp -fPIC -DPIC -o .libs/container.o
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT container.lo -MD -MP -MF .deps/container.Tpo -c container.cpp -o container.o >/dev/null 2>&1
if /bin/sh ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT dropdown.lo -MD -MP -MF ".deps/dropdown.Tpo" -c -o dropdown.lo dropdown.cpp; \
then mv -f ".deps/dropdown.Tpo" ".deps/dropdown.Plo"; else rm -f ".deps/dropdown.Tpo"; exit 1; fi
g++ -DHAVE_CONFIG_H -I. -I. -I../../include -I/usr/include/SDL -D_REENTRANT -g -O2 -Wall -Werror -Wno-unused -DGUICHAN_BUILD -MT dropdown.lo -MD -MP -MF .deps/dropdown.Tpo -c dropdown.cpp -fPIC -DPIC -o .libs/dropdown.o
cc1plus: warnings being treated as errors
../../include/guichan/listmodel.hpp:71: warning: 'class gcn::ListModel' has virtual functions but non-virtual destructor
make[2]: ** [dropdown.lo] Erro 1
make[2]: Leaving directory `/home/comp/guichan-0.4.0/src/widgets'
make[1]: ** [all-recursive] Erro 1
make[1]: Leaving directory `/home/comp/guichan-0.4.0/src'
make: ** [all-recursive] Erro 1
xand
Novice
Novice
Posts: 95
Joined: 19 Jul 2005, 18:08

Post by xand »

Had that too.
Use an older compiler and make clean or just add that line

virtual ListModel::~ListModel() {};

under public in the class ListModel.
User avatar
ElvenProgrammer
Founder
Founder
Posts: 2526
Joined: 13 Apr 2004, 19:11
Location: Italy
Contact:

Post by ElvenProgrammer »

This one should be fixed in guichan cvs as I said
Post Reply