Making all in src
make[2]: Entering directory `/mnt/hdb1/tmw-0.0.20/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -DTMW_DATADIR=\""/usr/local/share/tmw/"\" -Wall -Werror -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT `pkg-config --cflags libxml-2.0` -g -O2 -MT tmw-char_server.o -MD -MP -MF ".deps/tmw-char_server.Tpo" -c -o tmw-char_server.o `test -f 'gui/char_server.cpp' || echo './'`gui/char_server.cpp; \
then mv -f ".deps/tmw-char_server.Tpo" ".deps/tmw-char_server.Po"; else rm -f ".deps/tmw-char_server.Tpo"; exit 1; fi
In file included from gui/char_server.cpp:34:
net/network.h:28:21: SDL_net.h: No such file or directory
In file included from gui/char_server.cpp:34:
net/network.h:77: error: 'TCPsocket' is used as a type, but is not defined as a
type.
make[2]: *** [tmw-char_server.o] Error 1
make[2]: Leaving directory `/mnt/hdb1/tmw-0.0.20/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/hdb1/tmw-0.0.20'
make: *** [all] Error 2
I fixed this error by pasting SDL_net.h in every folder in tmw-0.0.20 folder (I don't know how everything works so just put it everywhere

Making all in src
make[2]: Entering directory `/mnt/hdb1/tmw-0.0.20/src'
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -DTMW_DATADIR=\""/usr/local/share/tmw/"\" -Wall -Werror -I/usr/local/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT `pkg-config --cflags libxml-2.0` -g -O2 -MT tmw-char_select.o -MD -MP -MF ".deps/tmw-char_select.Tpo" -c -o tmw-char_select.o `test -f 'gui/char_select.cpp' || echo './'`gui/char_select.cpp; \
then mv -f ".deps/tmw-char_select.Tpo" ".deps/tmw-char_select.Po"; else rm -f ".deps/tmw-char_select.Tpo"; exit 1; fi
In file included from gui/char_select.cpp:24:
gui/char_select.h:42: error: base class `gcn::ActionListener' has incomplete
type
gui/char_select.h:96: error: base class `gcn::ActionListener' has incomplete
type
gui/char_select.cpp: In constructor `
CharSelectDialog::CharSelectDialog(Network*, LockedArray<LocalPlayer>*,
unsigned char)':
gui/char_select.cpp:78: error: no matching function for call to `Button::Button
(const char[3], const char[3], CharSelectDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:79: error: no matching function for call to `Button::Button
(const char[7], const char[7], CharSelectDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:80: error: no matching function for call to `Button::Button
(const char[4], const char[4], CharSelectDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:81: error: no matching function for call to `Button::Button
(const char[7], const char[7], CharSelectDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:82: error: no matching function for call to `Button::Button
(const char[9], const char[9], CharSelectDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:83: error: no matching function for call to `Button::Button
(const char[5], const char[5], CharSelectDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp: In member function `void CharSelectDialog::action(const
std::string&)':
gui/char_select.cpp:161: error: cannot allocate an object of type `
CharDeleteConfirm'
gui/char_select.cpp:161: error: because the following virtual functions are
abstract:
/usr/include/guichan/actionlistener.hpp:92: error: virtual void
gcn::ActionListener::action(const std::string&, gcn::Widget*)
gui/char_select.cpp: In constructor `
CharCreateDialog::CharCreateDialog(Window*, int, Network*, unsigned char)':
gui/char_select.cpp:237: error: no matching function for call to `Button::
Button(const char[2], const char[10], CharCreateDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:238: error: no matching function for call to `Button::
Button(const char[2], const char[10], CharCreateDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:240: error: no matching function for call to `Button::
Button(const char[2], const char[10], CharCreateDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:241: error: no matching function for call to `Button::
Button(const char[2], const char[10], CharCreateDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:243: error: no matching function for call to `Button::
Button(const char[7], const char[7], CharCreateDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:244: error: no matching function for call to `Button::
Button(const char[7], const char[7], CharCreateDialog* const)'
gui/button.h:38: error: candidates are: Button::Button(const Button&)
gui/button.h:44: error: Button::Button(const std::string&,
const std::string&, gcn::ActionListener*)
gui/char_select.cpp:270: error: no matching function for call to `
gcn::TextField::addActionListener(CharCreateDialog* const)'
/usr/include/guichan/widget.hpp:440: error: candidates are: virtual void
gcn::Widget::addActionListener(gcn::ActionListener*)
gui/char_select.cpp: In member function `void CharCreateDialog::action(const
std::string&)':
gui/char_select.cpp:298: error: cannot allocate an object of type `OkDialog'
gui/char_select.cpp:298: error: because the following virtual functions are
abstract:
/usr/include/guichan/actionlistener.hpp:92: error: virtual void
gcn::ActionListener::action(const std::string&, gcn::Widget*)
make[2]: *** [tmw-char_select.o] Error 1
make[2]: Leaving directory `/mnt/hdb1/tmw-0.0.20/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/mnt/hdb1/tmw-0.0.20'
make: *** [all] Error 2
I would really like to play this game, so I would appreciate if someone could assist me.