• 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 got a bug:
Code:
XXX@XXX-desktop:~/0.2pl20$ make
rm -rf *.o
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c account.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c actions.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c admin.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c allocator.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c ban.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c baseevents.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c beds.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c creature.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c creatureevent.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c chat.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c combat.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c commands.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c condition.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c configmanager.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c connection.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c container.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c cylinder.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c database.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c databasemysql.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c databasesqlite.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c depot.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c exception.cpp
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -c fileloader.cpp
cc1plus: warnings being treated as errors
fileloader.cpp: In member function ‘bool FileLoader::openFile(const char*, bool, bool)’:
fileloader.cpp:81: error: ignoring return value of ‘size_t fread(void*, size_t, size_t, FILE*)’, declared with attribute warn_unused_result
make: *** [fileloader.o] Error 1

Any ideas for solution? I use Ubuntu Desktop Intrepid Ibex (8.10).
 
c-1058e353:/home/cerdito/boost_1_34_1/libs/system/src# ln -s /usr/local/lib/libboost_system.so.1.0.1 /usr/local/lib/libboost_system.so
ln: creating symbolic link `/usr/local/lib/libboost_system.so' to `/usr/local/lib/libboost_system.so.1.0.1': File exists
 
@Keraxel
I see, that you are from Poland, I'm too ;p.
Na 8.10 mam ten sam problem, radzę Ci ściągnąć Ubuntu 8.04 (To LTS: Long Term Support), wsparcie ma do 2013.
@topic: It's a good tutorial, but this problem on Ubuntu 8.10... heh ;s
For Ubuntu users:
If you want to have root in console, type:
Code:
sudo su
.
If you want to leave root in console, type:
Code:
exit

Regards
 
@Keraxel
I see, that you are from Poland, I'm too ;p.
Na 8.10 mam ten sam problem, radzę Ci ściągnąć Ubuntu 8.04 (To LTS: Long Term Support), wsparcie ma do 2013.
@topic: It's a good tutorial, but this problem on Ubuntu 8.10... heh ;s
For Ubuntu users:
If you want to have root in console, type:
Code:
sudo su
.
If you want to leave root in console, type:
Code:
exit

Regards

I use sudo -s to go on root..
 
I have 2 questions.
I have a Linux Debian vServer with Confixx.
1.: Where is the folder where i put the things of my website???
2.: When I start TFS with SSH(Putty) the Server runs and I can login. But when i close SSH(Putty) the Server close too. So how i make it that Server is always running???
I start the Server with the Command of the TFS Readme(cd /root/server/0.2pl19/ && ./TheForgottenServer)
 
I have 2 questions.
I have a Linux Debian vServer with Confixx.
1.: Where is the folder where i put the things of my website???
2.: When I start TFS with SSH(Putty) the Server runs and I can login. But when i close SSH(Putty) the Server close too. So how i make it that Server is always running???
I start the Server with the Command of the Readme(cd /root/server/0.2pl19/ && ./TheForgottenServer)

1. /var/www/

2. You should put it in the startup list, I don't know the command for that, I hope someone else can answer this:p
 
I have 2 questions.
I have a Linux Debian vServer with Confixx.
1.: Where is the folder where i put the things of my website???
2.: When I start TFS with SSH(Putty) the Server runs and I can login. But when i close SSH(Putty) the Server close too. So how i make it that Server is always running???
I start the Server with the Command of the TFS Readme(cd /root/server/0.2pl19/ && ./TheForgottenServer)

2.:
PuTTy is based to session.
On default window, check this option "Never" in Close window on exit:.

Now your OT always be online when you close the PuTTY window.​
 
2.:
PuTTy is based to session.
On default window, check this option "Never" in Close window on exit:.

Now your OT always be online when you close the PuTTY window.​

:O, Isn't it possible to let it to run in background like apache?
 
g++ -I. -I/usr/include/libxml2 -I/usr/include/lua5.1 -Werror -Wall -O1 -D__NO_HOMEDIR_CONF__ -D__USE_MYSQL__ -D__USE_SQLITE__ -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
connection.o: In function `Connection::parsePacket(boost::system::error_code const&)':
connection.cpp:(.text+0x2192): undefined reference to `vtable for ProtocolOld'
collect2: ld returned 1 exit status
make: *** [theforgottenserver] Error 1

Thats the error i get while i try to complie :(
 
When i wanna compile TFS 0.3 Beta 1 Patch 2 this error appears:
cd /root/0.3b1pl2 && ./autogen.sh && ./configure --enable-mysql --enable-server-diag && make
./autogen.sh: line 1: autoreconf: command not found
 
@Elf:
Edit the Tutorial plz
The line :
Code:
ln -s /usr/local/lib/libboost_system.so.1.0.1 /usr/local/lib/libboost_system.so
does not work by me. It has to be:
Code:
ln -s /usr/local/lib/libboost_system.so.1.0.1 /usr/lib/libboost_system.so.1
Because with the upper one I get this error:
Code:
./TheForgottenServer: error while loading shared libraries: libboost_system.so.1: cannot open shared object file: No such file or directory
 
Hi there, can someone help me out ? this is the error:

/usr/bin/ld: cannot find -llua5.1-sql-mysql

I want to use mySQL server.
 
Last edited:
i fallowed ur tutorial on tfs everything works but on open tibia latest revision 0.6.0 https://opentibia.svn.sourceforge.net/svnroot/opentibia/otserv/tags/otserv-060 <<this one
i have fallowing error
Code:
make[1]: Wej\u015bcie do katalogu `/root/otserv-060'
g++-4.2 -DHAVE_CONFIG_H -I.    -I/usr/include/libxml2  -I/usr/include/lua5.1     -D__USE_SQLITE__     -D_THREAD_SAFE -D_REENTRANT -Wall -g -O2 -MT databasesqlite.o -MD -MP -MF .deps/databasesqlite.Tpo -c -o databasesqlite.o databasesqlite.cpp
mv -f .deps/databasesqlite.Tpo .deps/databasesqlite.Po
g++-4.2 -DHAVE_CONFIG_H -I.    -I/usr/include/libxml2  -I/usr/include/lua5.1     -D__USE_SQLITE__     -D_THREAD_SAFE -D_REENTRANT -Wall -g -O2 -MT account.o -MD -MP -MF .deps/account.Tpo -c -o account.o account.cpp
mv -f .deps/account.Tpo .deps/account.Po
g++-4.2 -DHAVE_CONFIG_H -I.    -I/usr/include/libxml2  -I/usr/include/lua5.1     -D__USE_SQLITE__     -D_THREAD_SAFE -D_REENTRANT -Wall -g -O2 -MT container.o -MD -MP -MF .deps/container.Tpo -c -o container.o container.cpp
In file included from scheduler.h:29,
                 from game.h:37,
                 from container.cpp:24:
tasks.h:85: b\u0142\u0105d: `condition_variable, in namespace `boost, does not name a type
In file included from game.h:37,
                 from container.cpp:24:
scheduler.h:42: b\u0142\u0105d: `system_time, in namespace `boost, does not name a type
scheduler.h:56: b\u0142\u0105d: `system_time, in namespace `boost, does not name a type
scheduler.h: In member function `bool SchedulerTask::operator<(const SchedulerTask&) const,:
scheduler.h:46: b\u0142\u0105d: `getCycle, was not declared in this scope
scheduler.h:46: b\u0142\u0105d: `const class SchedulerTask, has no member named `getCycle,
scheduler.h: In constructor `SchedulerTask::SchedulerTask(uint32_t, boost::function<void ()(), std::allocator<void> >),:
scheduler.h:52: b\u0142\u0105d: `m_cycle, was not declared in this scope
scheduler.h:52: b\u0142\u0105d: `get_system_time, is not a member of `boost,
scheduler.h:52: b\u0142\u0105d: `boost::posix_time, has not been declared
scheduler.h: At global scope:
scheduler.h:108: b\u0142\u0105d: `condition_variable, in namespace `boost, does not name a type
make[1]: *** [container.o] B\u0142\u0105d 1
make[1]: Opuszczenie katalogu `/root/otserv-060'
make: *** [all] B\u0142\u0105d 2
root@ks27643:~/otserv-060#
 
patryk@patryk-pc:~/forgottenserver$ make
make: *** Nie podano obiektów i nie znaleziono makefile. Stop.

Translation:
make: *** Object not set(?) and couldn't find makefile. Stop.

Weird, because I did that yesterday and it worked ;D
 
i have a problem when i start my server on ubuntu desnktop 8.04
i have a error
> Map loading time: 0.303 seconds.
I/O warning : failed to load external entity "data/world/sasirsrookaaaa-spawn.xml"
WARNING: Could not load spawn data.
> Data loading time: 0.006 seconds.
> Unserialization time: 0 seconds.
>> All modules were loaded, server starting up...
[Error Raids::loadFromXml]: Wrong root node.
terminate called after throwing an instance of 'boost::system::system_error'
what(): Address already in use
Aborted
TFS 3b2
please help me
 
@Xbass
Try making this:
Code:
ln -s /usr/local/lib/libboost_system.so.1.0.1 /usr/lib/libboost_system.so.1
and then start server normally.

Your's ballack13
 
Translation:


Weird, because I did that yesterday and it worked ;D
Code:
apt-get install autoconf automake make g++
Code:
sh autogen.sh
./configure --enable-mysql
make
 
Last edited:
Back
Top