• There is NO official Otland's Discord server and NO official Otland's server list. The Otland's Staff does not manage any Discord server or server list. Moderators or administrator of any Discord server or server lists have NO connection to the Otland's Staff. Do not get scammed!

Compiling [Linux] Ultimate compile guide for Debian (Ubuntu included)

i hawe this problem, need help!!!.

krystian:/etc/apt/forgottenserver/source# ./configure --enable-mysql --enable-sqlite --enable-remote-control --enable-server-diag
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking for g++... g++
checking for C++ compiler default output file name... a.out
checking whether the C++ compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking for style of include used by make... GNU
checking dependency style of g++... gcc3
checking how to run the C++ preprocessor... g++ -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking arpa/inet.h usability... yes
checking arpa/inet.h presence... yes
checking for arpa/inet.h... yes
checking netdb.h usability... yes
checking netdb.h presence... yes
checking for netdb.h... yes
checking netinet/in.h usability... yes
checking netinet/in.h presence... yes
checking for netinet/in.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdint.h... (cached) yes
checking for stdlib.h... (cached) yes
checking sys/socket.h usability... yes
checking sys/socket.h presence... yes
checking for sys/socket.h... yes
checking sys/timeb.h usability... yes
checking sys/timeb.h presence... yes
checking for sys/timeb.h... yes
checking for stdbool.h that conforms to C99... yes
checking for _Bool... no
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for int16_t... yes
checking for int32_t... yes
checking for int64_t... yes
checking for size_t... yes
checking whether struct tm is in sys/time.h or time.h... time.h
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for uint8_t... yes
checking for ptrdiff_t... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for working memcmp... yes
checking for stdlib.h... (cached) yes
checking for GNU libc compatible realloc... yes
checking for floor... yes
checking for ftime... yes
checking for gethostbyname... yes
checking for gethostname... yes
checking for memset... yes
checking for pow... yes
checking for sqrt... yes
checking for strcasecmp... yes
checking for strncasecmp... yes
checking for strstr... yes
checking for strtol... yes
checking for xml2-config... /usr/bin/xml2-config
checking for libxml - version >= 2.6.5... yes (version 2.7.6)
checking gmp.h usability... yes
checking gmp.h presence... yes
checking for gmp.h... yes
checking for __gmpz_init2 in -lgmp... yes
checking for main in -lboost_regex-gcc-mt... no
checking for main in -lboost_regex-mt... yes
checking for main in -lboost_system-gcc-mt... no
checking for main in -lboost_system-mt... yes
checking for main in -lboost_date_time-gcc-mt... no
checking for main in -lboost_date_time-mt... yes
checking for main in -lboost_filesystem-gcc-mt... no
checking for main in -lboost_filesystem-mt... yes
checking boost/asio.hpp usability... yes
checking boost/asio.hpp presence... yes
checking for boost/asio.hpp... yes
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for LUA... yes
checking mysql/mysql.h usability... yes
checking mysql/mysql.h presence... yes
checking for mysql/mysql.h... yes
checking for main in -lmysqlclient... yes
checking sqlite3.h usability... yes
checking sqlite3.h presence... yes
checking for sqlite3.h... yes
checking for main in -lsqlite3... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config.h
config.status: executing depfiles commands

theforgottenserver 0.3.5

Server diagnostics.......... : yes
Login server mode........... : no
Remote control.............. : yes
Root run permission......... : no
Home-directory configuration : no
OTServ custom allocator..... : no
Debug build................. : no

Build with MySQL............ : yes
Build with SQLite........... : yes
Build with PostgreSQL....... : no
Build with ODBC............. : no

Configure complete, now you may type 'make'.
krystian:/etc/apt/forgottenserver/source# make
make all-am
make[1]: Wejście do katalogu `/etc/apt/forgottenserver/source'
g++ -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__USE_MYSQL__ -D__USE_SQLITE__ -D__ENABLE_SERVER_DIAGNOSTIC__ -D__REMOTE_CONTROL__ -D_THREAD_SAFE -D_REENTRANT -Wall -g -O1 -o theforgottenserver actions.o admin.o allocator.o baseevents.o beds.o chat.o combat.o condition.o configmanager.o connection.o container.o creature.o creatureevent.o cylinder.o database.o databasemanager.o databasemysql.o databasesqlite.o depot.o exception.o fileloader.o game.o globalevent.o group.o gui.o house.o housetile.o inputbox.o ioban.o ioguild.o iologindata.o iomap.o iomapserialize.o item.o items.o luascript.o mailbox.o map.o md5.o monster.o monsters.o movement.o networkmessage.o npc.o otserv.o outfit.o outputmessage.o party.o playerbox.o player.o position.o protocol.o protocolgame.o protocolhttp.o protocollogin.o protocolold.o quests.o raids.o rsa.o scheduler.o scriptmanager.o server.o sha1.o spawn.o spells.o status.o talkaction.o tasks.o teleport.o textlogger.o thing.o tile.o tools.o trashholder.o waitlist.o weapons.o vocation.o -llua5.1 -lsqlite3 -lmysqlclient -lboost_filesystem-mt -lboost_date_time-mt -lboost_system-mt -lboost_regex-mt -lgmp -lxml2
actions.o: In function `__static_initialization_and_destruction_0':
/usr/local/include/boost/system/error_code.hpp:172: undefined reference to `boost::system::get_posix_category()'
/usr/local/include/boost/system/error_code.hpp:175: undefined reference to `boost::system::get_posix_category()'
admin.o: In function `__static_initialization_and_destruction_0':
/usr/local/include/boost/system/error_code.hpp:172: undefined reference to `boost::system::get_posix_category()'
/usr/local/include/boost/system/error_code.hpp:175: undefined reference to `boost::system::get_posix_category()'
baseevents.o: In function `__static_initialization_and_destruction_0':
/usr/local/include/boost/system/error_code.hpp:172: undefined reference to `boost::system::get_posix_category()'
baseevents.o:/usr/local/include/boost/system/error_code.hpp:175: more undefined references to `boost::system::get_posix_category()' follow
collect2: ld returned 1 exit status
make[1]: *** [theforgottenserver] Błąd 1
make[1]: Opuszczenie katalogu `/etc/apt/forgottenserver/source'
make: *** [all] Błąd 2
krystian:/etc/apt/forgottenserver/source#
 
Guys, I'm new to Linux. I'm gonna host the newest TFS atm. So I wonder wich I should choose? Ubuntu or Debian? I'm ONLY gonna use the server to host with. Nothing else.. I'm also thinking about 32-bit or 64-bit. I'm using a intel dualcore 3,2 ghz and 4gb ram. So should I use 64-bit or 32-bit?

Help appreciated! Thx!


ALSO! I wonder how I can update my server when using Ubuntu/Debian server? how can I add new monsters, map, actions etc etc when everything is just showed as text?
 
Last edited:
Guys, I'm new to Linux. I'm gonna host the newest TFS atm. So I wonder wich I should choose? Ubuntu or Debian? I'm ONLY gonna use the server to host with. Nothing else.. I'm also thinking about 32-bit or 64-bit. I'm using a intel dualcore 3,2 ghz and 4gb ram. So should I use 64-bit or 32-bit?

Help appreciated! Thx!


ALSO! I wonder how I can update my server when using Ubuntu/Debian server? how can I add new monsters, map, actions etc etc when everything is just showed as text?

I would take Ubuntu Desktop, but only for emergency- keep using SSH. For transfering stuff, install FTP server and use FTP client from your machine, or just directly get SFTP client and connect with login data of SSH. Read some tutorials on Google about managing a dedicated server for newbie.
 
Install ubuntu-server and learn you the stuff. Exists a million guides for everything so you should have no problems at all.
 
Guys, I'm new to Linux. I'm gonna host the newest TFS atm. So I wonder wich I should choose? Ubuntu or Debian? I'm ONLY gonna use the server to host with. Nothing else.. I'm also thinking about 32-bit or 64-bit. I'm using a intel dualcore 3,2 ghz and 4gb ram. So should I use 64-bit or 32-bit?

Help appreciated! Thx!


ALSO! I wonder how I can update my server when using Ubuntu/Debian server? how can I add new monsters, map, actions etc etc when everything is just showed as text?
note that Debian is ALWAYS (99,99999%, 100% of the time) faster out with software/security updates, and so debian is the better choice for servers, imo. also note that there's a difference in the kernel with ubuntu-desktop and ubuntu-server, if your going with ubuntu, install ubuntu-server and sudo apt-get install ubuntu-desktop (for more info, read this Kernel | Ubuntu)
but i say again, debian is the better choice for server hosting
 
Last edited:
OMG. Ubuntu is nerd, and i have it on my computer. I will never understand it :(((
 
So, I've been bashing my head against this TFS 0.2.5 source for a while now and I'm at a standstill. The libboost_system is playing head games with me right now, it's throwing errors everywhere. At first it couldn't be found, then after making some symbolic links, I get this:

Code:
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -D__RESETER__ -o ./TheForgottenServer account.o actions.o admin.o allocator.o ban.o baseevents.o beds.o creature.o creatureevent.o chat.o combat.o commands.o condition.o configmanager.o connection.o container.o cylinder.o database.o databasemysql.o databasesqlite.o depot.o exception.o fileloader.o game.o gui.o house.o housetile.o ioguild.o iologindata.o iomap.o iomapserialize.o inputbox.o item.o items.o logger.o luascript.o mailbox.o map.o md5.o monster.o monsters.o movement.o networkmessage.o npc.o otserv.o outfit.o outputmessage.o party.o player.o playerbox.o position.o protocol.o protocolgame.o protocollogin.o quests.o raids.o rsa.o scheduler.o scriptmanager.o server.o sha1.o spawn.o spells.o status.o talkaction.o tasks.o teleport.o textlogger.o thing.o tile.o tools.o trashholder.o vocation.o waitlist.o weapons.o  -L/usr/lib -lxml2 -lpthread -llua5.1 -lgmp -lmysqlclient -lboost_regex -lsqlite3 -llua5.1-sql-mysql -ldl -lboost_system
otserv.o:(.rodata._ZTV16ProtocolOldLogin[vtable for ProtocolOldLogin]+0x18): undefined reference to `ProtocolOld::onRecvFirstMessage(NetworkMessage&)'
otserv.o:(.rodata._ZTI16ProtocolOldLogin[typeinfo for ProtocolOldLogin]+0x8): undefined reference to `typeinfo for ProtocolOld'
otserv.o:(.rodata._ZTV15ProtocolOldGame[vtable for ProtocolOldGame]+0x18): undefined reference to `ProtocolOld::onRecvFirstMessage(NetworkMessage&)'
otserv.o:(.rodata._ZTI15ProtocolOldGame[typeinfo for ProtocolOldGame]+0x8): undefined reference to `typeinfo for ProtocolOld'
collect2: ld returned 1 exit status
make: *** [theforgottenserver] Error 1

I omitted the normal compiling of the other .cpp files. I can't find a way to fix this, any help would be much appreciated.
 
Hello
I have bug for commands:
./autogen.sh
./configure --enable-mysql --enable-sqlite --enable-remote-control --enable-server-diag
make


All this time it was without any errors. But if i can`t write Up commands

Here is screen + translate by google


Code:
r30696:~/forgottenserver# ./autogen.sh
-bash: ./autogen.sh: Nie ma takiego pliku ani katalogu
r30696:~/forgottenserver# ./configure --enable-mysql --enable-sqlite --enable-remote-control make
-bash: ./configure: Nie ma takiego pliku ani katalogu
r30696:~/forgottenserver#


Translate
Code:
r30696: ~ / forgottenserver #. / autogen.sh
-bash:. / autogen.sh: No such file or directory
r30696: ~ / forgottenserver #. / configure - enable-mysql - enable-sqlite - enable-remote-control make
-bash:. / configure: No such file or directory
r30696: ~ / forgottenserver #



#Edit
No scren, paint is broke (wft)
 
fuck!, i'm always getting erro at Debian 5.0, i do everythings you say and i get only errors with boost, i try everything, i'll never compile on linux --'
 
fuck!, i'm always getting erro at Debian 5.0, i do everythings you say and i get only errors with boost, i try everything, i'll never compile on linux --'

Maybe... share error with us?
 
the way is, my debian never get packages related to libboost1.38-ALL
there are only liboost1.35-ALL , and i can't compile because of it...
how can i get 1.38 packages ? :S
 
after 3-4 hours using google and inteligence, i compile it on linux' :D
the problem is that liboost 1.38 are "testing" and debian get only
stable packages, i download packages manually, install it and worked,
now compiling, need only to learn how to use mysql at linux now :D
good work. :)
 
make[1]: Wejście do katalogu `/root/0.3.6'
g++ -DHAVE_CONFIG_H -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -D__USE_SQLITE__ -D__ENABLE_SERVER_DIAGNOSTIC__ -D_THREAD_SAFE -D_REENTRANT -Wall -g -O1 -MT actions.o -MD -MP -MF .deps/actions.Tpo -c -o actions.o actions.cpp
In file included from baseevents.h:20,
from actions.h:20,
from actions.cpp:20:
otsystem.h:79:11: error: missing binary operator before token "_MSC_VER"
make[1]: *** [actions.o] Błąd 1
make[1]: Opuszczenie katalogu `/root/0.3.6'
make: *** [all] Błąd 2
root@xxx:~/0.3.6# otsystem.h:79:11: error: missing binary operator before token "_MSC_VER"
-bash: otsystem.h:79:11:: nie znaleziono polecenia

Help Me
 
ELF! Please update packets in your compilation Linux THEARD! Packets are very outdated! : |
 
Code:
ks306425:~/forgottenserver/source# ./autogen.sh
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force
/usr/share/aclocal/libmcrypt.m4:17: warning: underquoted definition of AM_PATH_LIBMCRYPT
/usr/share/aclocal/libmcrypt.m4:17:   run info '(automake)Extending aclocal'
/usr/share/aclocal/libmcrypt.m4:17:   or seehttp://sources.redhat.com/automake/automake.html#Extending-aclocal
configure.ac:136: warning: macro `AM_PATH_XML2' not found in library
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/bin/autoconf --force
configure.ac:112: error: possibly undefined macro: AC_CHECK_HEADERS
     If this token and others are legitimate, please use m4_pattern_allow.
     See the Autoconf documentation.
configure.ac:136: error: possibly undefined macro: AM_PATH_XML2
configure.ac:136: error: possibly undefined macro: AC_MSG_ERROR
configure.ac:141: error: possibly undefined macro: AC_CHECK_LIB
autoreconf: /usr/bin/autoconf failed with exit status: 1

And

Code:
ks306425:~# apt-cache search libboost*
libboost-date-time-dev - set of date-time libraries based on generic programming concepts
libboost-date-time1.34.1 - set of date-time libraries based on generic programming concepts
libboost-date-time1.35-dev - set of date-time libraries based on generic programming concepts
libboost-date-time1.35.0 - set of date-time libraries based on generic programming concepts
libboost-dbg - Boost C++ Libraries with debug symbols
libboost-dev - Boost C++ Libraries development files
libboost-doc - Boost.org libraries documentation
libboost-filesystem-dev - filesystem operations (portable paths, iteration over directories, etc) in C++
libboost-filesystem1.34.1 - filesystem operations (portable paths, iteration over directories, etc) in C++
libboost-filesystem1.35-dev - filesystem operations (portable paths, iteration over directories, etc) in C++
libboost-filesystem1.35.0 - filesystem operations (portable paths, iteration over directories, etc) in C++
libboost-graph-dev - generic graph components and algorithms in C++
libboost-graph1.34.1 - generic graph components and algorithms in C++
libboost-graph1.35-dev - generic graph components and algorithms in C++
libboost-graph1.35.0 - generic graph components and algorithms in C++
libboost-iostreams-dev - Boost.Iostreams Library development files
libboost-iostreams1.34.1 - Boost.Iostreams Library
libboost-iostreams1.35-dev - Boost.Iostreams Library development files
libboost-iostreams1.35.0 - Boost.Iostreams Library
libboost-program-options-dev - program options library for C++
libboost-program-options1.34.1 - program options library for C++
libboost-program-options1.35-dev - program options library for C++
libboost-program-options1.35.0 - program options library for C++
libboost-python-dev - Boost.Python Library development files
libboost-python1.34.1 - Boost.Python Library
libboost-python1.35-dev - Boost.Python Library development files
libboost-python1.35.0 - Boost.Python Library
libboost-regex-dev - regular expression library for C++
libboost-regex1.34.1 - regular expression library for C++
libboost-regex1.35-dev - regular expression library for C++
libboost-regex1.35.0 - regular expression library for C++
libboost-serialization-dev - serialization library for C++
libboost-serialization1.34.1 - serialization library for C++
libboost-serialization1.35-dev - serialization library for C++
libboost-serialization1.35.0 - serialization library for C++
libboost-signals-dev - managed signals and slots library for C++
libboost-signals1.34.1 - managed signals and slots library for C++
libboost-signals1.35-dev - managed signals and slots library for C++
libboost-signals1.35.0 - managed signals and slots library for C++
libboost-system1.35-dev - Operating system (e.g. diagnostics support) library
libboost-system1.35.0 - Operating system (e.g. diagnostics support) library
libboost-test-dev - components for writing and executing test suites
libboost-test1.34.1 - components for writing and executing test suites
libboost-test1.35-dev - components for writing and executing test suites
libboost-test1.35.0 - components for writing and executing test suites
libboost-thread-dev - portable C++ multi-threading
libboost-thread1.34.1 - portable C++ multi-threading
libboost-thread1.35-dev - portable C++ multi-threading
libboost-thread1.35.0 - portable C++ multi-threading
libboost-wave-dev - C99/C++ preprocessor library
libboost-wave1.34.1 - C99/C++ preprocessor library
libboost-wave1.35-dev - C99/C++ preprocessor library
libboost-wave1.35.0 - C99/C++ preprocessor library
libboost1.35-dbg - Boost C++ Libraries with debug symbols
libboost1.35-dev - Boost C++ Libraries development files
libboost1.35-doc - Boost.org libraries documentation
pyste - Boost.Python code generator


Can u help me ?
 
Back
Top