[HOWTO] Kompilacja OTS (Open Tibia Server) Feisty Fawn

mcrulezz
Piegowaty Guziec
Piegowaty Guziec
Posty: 2
Rejestracja: 06 kwie 2007, 22:00
Płeć: Mężczyzna
Wersja Ubuntu: 10.10
Środowisko graficzne: GNOME
Architektura: x86_64

[HOWTO] Kompilacja OTS (Open Tibia Server) Feisty Fawn

Post autor: mcrulezz »

Witam!
Jest to tłumaczenie tego tutoriala na wiki, z dodatkami własnymi.

-1- WYMAGANIA

Po pierwsze będziemy potrzebować kilku pakietów, a więc wpisujemy w terminalu:

Kod: Zaznacz cały

sudo apt-get install lua5.1 liblua5.1-0 liblua5.1-0-dev libboost-dev libboost-regex-dev libboost-thread-dev libmysql++-dev libgmp3-dev subversion autoconf automake make g++
UWAGA!
Jeśli będziesz korzystał/a z XML a nie bazy danych potrzebujesz jeszcze kilku pakietów:

Kod: Zaznacz cały

sudo apt-get install libxml2 libxml2-dev libxml++2.6-dev
-2- ŚCIĄGANIE ŹRÓDEŁ

Najpierw musisz stworzyć katalogi dla OTS'a, więc do dzieła:

Kod: Zaznacz cały

mkdir ~/otserv
cd ~/otserv
Teraz ściągniemy najnowsze źródła OTServ'a z SVN:

Kod: Zaznacz cały

svn checkout https://opentibia.svn.sourceforge.net/svnroot/opentibia/otserv/trunk
Zmień teraz katalog:

Kod: Zaznacz cały

cd ~/otserv/trunk
Następnie uruchom autogen:

Kod: Zaznacz cały

./autogen.sh
Sprawdzmy teraz czy wszystko jest gotowe do kompilacji:

Jeśli będziesz używał bazy danych MySQL:

Kod: Zaznacz cały

./configure --enable-mysql
Jeśli będziesz używał bazy danych SQLite:

Kod: Zaznacz cały

./configure --enable-sqlite
Jeśli będziesz używał XML'ów:

Kod: Zaznacz cały

./configure
Jeśli znajdziesz jakieś negatywne odpowiedzi np. "gcc ... no" wyszukaj je poleceniem 'sudo aptitude search nazwa_pakietu' i zainstaluj je np.:

Kod: Zaznacz cały

sudo aptitude search gcc
sudo aptitude install gcc
Jeśli skończyłeś konfigurować i wszystko było OK możesz przystąpić do kompilacji:

Kod: Zaznacz cały

make
Jeśli napotkałbyś po drodze jakieś błędy, nieczystości:

Kod: Zaznacz cały

make clean
make
-3- Skończyła się kompilacja? Uruchom to!

Jeśli wyżej wszystko poszło ok, możemy przystąpić do uruchamiania. Po pierwsze musimy przenieść plik config.lua do katalogu otserv'a:

Kod: Zaznacz cały

mkdir ~/.otserv/
mv config.lua.dist ~/.otserv/config.lua
Teraz nareszcie możemy odpalić naszego OTServ'a!

Kod: Zaznacz cały

./otserv
-4- Potwory!

Uwaga!
W moim przypadku był problem z katalogiem monsters ponieważ nie zawierał wszystkich potworów, jednak poradziłem sobie z tym problemem. Po pierwsze musimy ściągnąć jakąś windowsową wersję OTServ'a np. z tąd:

Dla XML:
http://download.tibia.org.pl/index.php? ... ile&id=286

Dla SQL:
http://download.tibia.org.pl/index.php? ... ile&id=287

Następnie należy rozpakować archiwum.
Wejść do rozpakowanego archiwum:

Kod: Zaznacz cały

cd nazwa_rozpakowanego_folderu
cd data
cd monster
I wydać komendę:

Kod: Zaznacz cały

sudo cp *.xml ~/otserv/trunk/data/monster
-5-
Zdarza się, że przy poleceniu:

Kod: Zaznacz cały

./configure --enable-mysql
Wyskakuje taki oto błąd:

Kod: Zaznacz cały

checking for main in -lboost_thread-gcc-mt... no 
checking for main in -lboost_thread-mt... no
checking for main in -lboost_thread... yes
checking for main in -lboost_regex-gcc-mt... no
checking for main in -lboost_regex-mt... no
checking for main in -lboost_regex... yes
checking for main in -lboost_system-gcc-mt... no
checking for main in -lboost_system-mt... no
checking for main in -lboost_system... no
configure: error: "Linking against boost::system library failed."
debian:~/otserv/trunk#
Należy wtedy zrobić tak:

Kod: Zaznacz cały

sudo su
I podajemy NASZE hasło.

Kod: Zaznacz cały

sudo aptitude install libboost-date-time-dev libboost-date-time1.34.1 libboost-dev libboost-regex-dev libboost-regex1.34.1 libboost-signals-dev libboost-signals1.34.1 libboost-thread-dev  libboost-thread1.34.1 libxml2 liblua5.1-0 liblua5.1-0-dev liblua50 liblua50-dev liblualib50 liblualib50-dev lua50 libsqlite0 libsqlite0-dev libsqlite3-0 libsqlite3-dev sqlite3

Kod: Zaznacz cały

cd ~

Kod: Zaznacz cały

wget http://kent.dl.sourceforge.net/sourceforge/asio/boost_asio_0_3_8.tar.gz

Kod: Zaznacz cały

wget http://switch.dl.sourceforge.net/sourceforge/boost/boost_1_34_1.tar.gz

Kod: Zaznacz cały

tar -zxvf boost_asio_0_3_8.tar.gz

Kod: Zaznacz cały

tar -zxvf boost_1_34_1.tar.gz

Kod: Zaznacz cały

cp boost_asio_0_3_8/boost /usr/local/include -r

Kod: Zaznacz cały

cp boost_asio_0_3_8/libs boost_1_34_1 -r

Kod: Zaznacz cały

cd boost_1_34_1/libs/system/src/

Kod: Zaznacz cały

g++ -shared -Wl,-soname,libboost_system.so.1 -o libboost_system.so.1.0.1 error_code.cpp -lc -fPIC

Kod: Zaznacz cały

cp libboost_system.so.1.0.1 /usr/local/lib

Kod: Zaznacz cały

ln -s /usr/local/lib/libboost_system.so.1.0.1 /usr/local/lib/libboost_system.so

Kod: Zaznacz cały

ldconfig
Po tych zabiegach system jest gotowy do kompilacji OTS'a. ;]

________________________________________________________

To już koniec mam nadzieję, że komuś się przyda!
Ewentualne zastrzeżenia na PW!
ODPOWIEDZ

Wróć do „Software-Inne”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 28 gości