|
Установка MaNGOS Установка MaNGOS |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
07.03.2010, 10:55 | #1 | |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Кыргызстан
Сообщений: 52
Сказал(а) спасибо: 18
Поблагодарили 45 раз(а) в 11 сообщениях
|
[Гайд] Компиляция MaNGOS под Linux на примере Ubuntu
Будем рассматривать на примере Ubuntu.
Надо будет поставить нужные пакеты. Код:
~# apt-get install build-essential gcc g++ cpp automake git-core autoconf make patch libmysql++-dev libtool libcurl4-openssl-dev libssl-dev grep binutils subversion zlibc libc6 nano mysql-server Работа с сорсами Теперь. Обычно я делаю так. У меня сорсы MaNGOS и ScriptDev2 в папке Sources/mangos и Sources/scriptdev2 компилю и работаю с сорсами уже в папке Sources/complile если хотите, чтобы сорсы были также как у меня, то делаем так Код:
mkdir ~/Sources && cd ~/Sources git clone git://github.com/mangos/mangos.git svn co https://scriptdev2.svn.sourceforge.net/svnroot/scriptdev2/ Код:
mkdir ~/Sources && cd ~/Sources git clone git://github.com/mangos/mangos.git cd mangos svn co https://scriptdev2.svn.sourceforge.net/svnroot/scriptdev2/ src/bindings/ScriptDev2/ Патчинг Сорсы мы слили... Теперь надо их пропатчить хотя бы скриптдевом //обычно на этом моменте я копирую сорсы в ~/Sources/compile Чтобы пропатчить скриптдевом, достаточно ввести следующее Код:
cd ~/Sources/mangos/ Код:
cd ~/Sources/compile патчим сорсы мангоса скриптдевом Код:
git am src/bindings/ScriptDev2/patches/MaNGOS-* Код:
git apply < src/bindings/ScriptDev2/patches/MaNGOS-* Далее. У нас есть некоторые патчи, чтобы пропатчить ими сорсы мангоса вводим Код:
cd mangos patch -p1 -l < patch.patch Код:
cd src/bindings/ScriptDev2 patch -p0 -l < patch.patch Компиляция Первое Код:
autoreconf -fvi && mkdir objdir && cd objdir Код:
../configure --prefix=/opt/mangos --sysconfdir=/opt/mangos/etc --enable-cli --enable-ra --datadir=/opt/mangos Код:
make Цитата:
Код:
make install и так у нас имееться в папке /opt/mangos сервачок. надо нам настроить конфиги Код:
cp etc/mangosd.conf.dist etc/mangosd.conf cp etc/realmd.conf.dist etc/realmd.conf Создаем необходимые папки: ./mangos/maps ./mangos/dbc ./mangos/vmaps Экстрактит только под виндой, кидаем экстрактор в папку с ВоВом и запускаем распаковку dbc (~45-50M) maps (~1G) vmaps (~2-1G в зависимости от оптимизации). Далее закачиваете файлы на вашу систему (посредством ftp, smb или nfs) и копируете в соответствующие папки Работа с базой данных Создаем базы Код:
~# mysql -p'Пароль' < mangos/sql/create_mysql.sql ~# mysql -p'Пароль' < ScriptDev2/sql/ScriptDev2_create_database.sql ~# mysql -p'Пароль' ScriptDev2 < ScriptDev2/sql/ScriptDev2_create_structure_mysql.sql Код:
~# mysql -p'пароль' mangos < mangos/sql/mangos.sql ~# mysql -p'пароль' characters < mangos/sql/characters.sql ~# mysql -p'пароль' realmd < mangos/sql/realmd.sql ~# mysql -p'пароль' ScriptDev2 < ScriptDev2/sql/ScriptDev2_script_full.sql для заселения берем в моем примере базу YTDB, хотя есть и UDB и другие. Изменим реалмлист Код:
mysql -u root -p mysql> use realmd; mysql> UPDATE `realmlist` SET `name` = 'название_сервера' , `address` = 'ip адрес сервера' WHERE `id` = '1'; Запуск я создал в /путь/до/папки/с/сервером/bin/ 2 скрипта mangos.sh Код:
#!/bin/sh CMDNAME='mangos-worldd' RESTARTCMD='/путь/до/папки/с/сервером/bin/mangos-worldd' SLEEPTIME=1 while test 1 do OUTPUT=`ps ax | grep $CMDNAME | grep -v grep` if ! echo $OUTPUT | grep $CMDNAME 1>/dev/null ; then echo Restarting service... $RESTARTCMD else echo Server Online... fi sleep $SLEEPTIME done Код:
#!/bin/sh CMDNAME='mangos-realmd' RESTARTCMD='/путь/до/папки/с/сервером/bin/mangos-realmd' SLEEPTIME=1 while test 1 do OUTPUT=`ps ax | grep $CMDNAME | grep -v grep` if ! echo $OUTPUT | grep $CMDNAME 1>/dev/null ; then echo Restarting service... $RESTARTCMD else echo Server Online... fi sleep $SLEEPTIME done Код:
chmod +x mangos.sh && chmod +x realm.sh даем ему права на запуск Код:
chmod +x start Код:
screen -AmdS world /путь/до/папки/с/сервером/bin/mangos.sh screen -AmdS realm /путь/до/папки/с/сервером/bin/realm.sh Код:
./start Код:
screen -ls There are screens on: 3546.world (Detached) 3549.realm (Detached) 2 Sockets in /var/run/screen/S-mangos. ЗЫ: Предложения по дополнению мана приветствуються Порты Git и Subversion Код:
$ cat /etc/services | grep Git git 9418/tcp # Git Version Control System $ cat /etc/services | grep subver svn 3690/tcp subversion # Subversion protocol svn 3690/udp subversion Последний раз редактировалось Gen1us2k; 07.03.2010 в 16:52. |
|
27.03.2010, 21:59 | #3 | |
Гость
Сообщений: n/a
|
Хм..
вот я в Линуксе новичок... У меня второй день стоит Ubuntu 9.10 x64. Когда я начну более менее разбираться в линуксе, какой дистрибутив с упором на производительность мангоса вы бы мне посоветовали? или достаточно будет сменить сборку ОС с dektop edition на server edition (можете не прежупреждать, я знаю там нет графической оболочки)? Цитата:
И еще, если ставишь второй реалм, как поступить? В другую папку установить? если да, то какой командой. Последний раз редактировалось tempura; 29.03.2010 в 20:31. |
|
07.03.2010, 14:59 | #4 |
Гость
Сообщений: n/a
|
Народ,подскажите в чем проблема может быть,пробую скачать с ГИТа и получаю:
Код:
Initialized empty Git repository in /home/syrex/Sources/mangos/.git/ github.com[0: 207.97.227.239]: errno=Connection timed out fatal: unable to connect a socket (Connection timed out) |
07.03.2010, 15:03 | #5 | |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Кыргызстан
Сообщений: 52
Сказал(а) спасибо: 18
Поблагодарили 45 раз(а) в 11 сообщениях
|
Цитата:
|
|
07.03.2010, 15:05 | #6 |
Гость
Сообщений: n/a
|
|
07.03.2010, 15:08 | #7 | |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Кыргызстан
Сообщений: 52
Сказал(а) спасибо: 18
Поблагодарили 45 раз(а) в 11 сообщениях
|
Цитата:
|
|
07.03.2010, 15:35 | #8 |
Гость
Сообщений: n/a
|
Стоп,тут скорей всего у меня порт закрыт.
На какой порту гит работает ? |
07.03.2010, 15:39 | #9 |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Кыргызстан
Сообщений: 52
Сказал(а) спасибо: 18
Поблагодарили 45 раз(а) в 11 сообщениях
|
Код:
$ cat /etc/services | grep Git git 9418/tcp # Git Version Control System |
Пользователь сказал cпасибо: |
07.03.2010, 18:22 | #10 |
Гость
Сообщений: n/a
|
Может немного не в тему.
Но Пингвинов советую скачать тут http://mirror.yandex.ru/ для новичков рекомендую Ubuntu (щас постораюсь найти лентяй-скрипт для авто установки), а для тех кто хочет углубиться в изучения О.С. и сервер с отличной работоспособностью, + наилучшем соотношением онлайн железо советую Gentoo. |
07.03.2010, 21:37 | #11 |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Россия
Сообщений: 29
Сказал(а) спасибо: 16
Поблагодарили 18 раз(а) в 3 сообщениях
|
Ошибка конфгурации
OS: Debian
Mangos: 9541 (Каратель + 3 доп. патча) Вариант 1. Код:
cd mangos autoreconf -fvi automake src/bindings/ScriptDev2/Makefile cd .. mkdir objdir cd objdir ../mangos/configure --with-debug-info --prefix=/usr/local/mangos --sysconfdir=/usr/local/mangos/etc --enable-cli --enable-ra --datadir=/usr/local/mangos Код:
configure: creating ./config.status .infig.status: error: cannot find input file: Код:
cd mangos autoreconf --install --force aclocal autoheader autoconf Код:
configure.ac:36: error: possibly undefined macro: AC_MSG_ERROR If this token and others are legitimate, please use m4_pattern_allow. See the Autoconf documentation. Последний раз редактировалось Nordway; 07.03.2010 в 22:37. |
24.07.2010, 12:23 | #12 | |
Гость
Сообщений: n/a
|
Цитата:
у меня тож такая же ошибка, роюсь в гугле пробую решить проблему, если получится то отпишу. |
|
07.03.2010, 22:45 | #13 |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Кыргызстан
Сообщений: 52
Сказал(а) спасибо: 18
Поблагодарили 45 раз(а) в 11 сообщениях
|
Код:
git apply < src/bindings/ScriptDev2/patches/MaNGOS-* autoreconf -fvi mkdir objdir && cd objdir ../configure blah blah blah |
07.03.2010, 22:54 | #14 |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Россия
Сообщений: 29
Сказал(а) спасибо: 16
Поблагодарили 18 раз(а) в 3 сообщениях
|
всё равно вот это получаю =\
Код:
configure: creating ./config.status .infig.status: error: cannot find input file: Добавлено... Чистые исходники без SD2 Код:
autoreconf -fvi mkdir objdir && cd objdir ../configure blah blah blah Последний раз редактировалось Nordway; 07.03.2010 в 23:06. |
07.03.2010, 23:02 | #15 |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Суровый Город
Сообщений: 41
Сказал(а) спасибо: 23
Поблагодарили 25 раз(а) в 13 сообщениях
Записей в дневнике: 1
|
Код:
dos2unix configure.ac dos2unix /dep/ACE_wrappers/configure.ac |
07.03.2010, 23:21 | #16 |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Россия
Сообщений: 29
Сказал(а) спасибо: 16
Поблагодарили 18 раз(а) в 3 сообщениях
|
Вроде при скачивани с репозитария на Linux-е "кодировки" должны автоматом подгоняться =\
В любом случае, спасибо, порпобую так сделать. |
08.03.2010, 13:23 | #17 |
Гость
Сообщений: n/a
|
Когда пытаюсь выполнить команду autoreconf -fvi && mkdir objdir && cd objdir
Получаю пачку вот таких ахтунгов libtoolize: can not copy `/usr/share/aclocal/ltversion.m4' to `m4/' В чём может быть проблема.. |
08.03.2010, 13:31 | #18 | |
RMDC Donator
Регистрация: 07.03.2010
Адрес: Кыргызстан
Сообщений: 52
Сказал(а) спасибо: 18
Поблагодарили 45 раз(а) в 11 сообщениях
|
а с правами все нормально? или с пакетами?
к примеру под последними ревами все путем Цитата:
|
|
08.03.2010, 13:45 | #19 | |
Гость
Сообщений: n/a
|
Цитата:
Код:
drwxrwx--- 2 root plugdev 65536 2010-03-08 13:56 m4 root@alioth:/windows/Sources/compile/mangos# autoreconf -fvi autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal --force -I m4 autoreconf: configure.ac: tracing autoreconf: configure.ac: adding subdirectory dep/ACE_wrappers to autoreconf autoreconf: Entering directory `dep/ACE_wrappers' autoreconf: running: libtoolize --install --copy --force libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `aux_config'. libtoolize: can not copy `/usr/share/libtool/config/config.guess' to `aux_config/' libtoolize: can not copy `/usr/share/libtool/config/config.sub' to `aux_config/' libtoolize: can not copy `/usr/share/libtool/config/install-sh' to `aux_config/' libtoolize: can not copy `/usr/share/libtool/config/ltmain.sh' to `aux_config/' libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'. libtoolize: can not copy `/usr/share/aclocal/libtool.m4' to `m4/' libtoolize: can not copy `/usr/share/aclocal/ltoptions.m4' to `m4/' libtoolize: can not copy `/usr/share/aclocal/ltsugar.m4' to `m4/' libtoolize: can not copy `/usr/share/aclocal/ltversion.m4' to `m4/' libtoolize: can not copy `/usr/share/aclocal/lt~obsolete.m4' to `m4/' autoreconf: libtoolize failed with exit status: 1 Последний раз редактировалось Mixnsk; 08.03.2010 в 13:54. |
|
08.03.2010, 14:18 | #20 | |
Гость
Сообщений: n/a
|
Цитата:
|
|
08.03.2010, 14:23 | #21 | |
Гость
Сообщений: n/a
|
Цитата:
root@alioth:/windows/Sources/compile/mangos# apt-get install libtool Чтение списков пакетов... Готово Построение дерева зависимостей Чтение информации о состоянии... Готово Уже установлена самая новая версия libtool. |
|
08.03.2010, 18:19 | #22 |
Гость
Сообщений: n/a
|
С горем пополам вроде бы конфигурация прошла
делаю make и получаю вот это... mixnsk@alioth:/windows/Sources/compile/mangos/objdir$ make cd .. && /bin/bash /windows/Sources/compile/mangos/missing --run automake-1.11 --gnu src/Makefile cd . && /bin/bash ./config.status src/Makefile config.status: creating src/Makefile Making all in tools /bin/bash: line 17: cd: tools: No such file or directory make: *** [all-recursive] Ошибка 1 |
09.03.2010, 17:09 | #23 |
Гость
Сообщений: n/a
|
За скрипт спасибо... Вообщем убил пока часов пять своей жизни на эксперименты))
Пути подправил в скрипте на то как мне удобно. Но тут есть свои косяки 1) Хоть убей не определяется ревизия скриптдева... по сути она не нужна просто получаем папку с названием ревизии ядрышка. Это не притично 2) Исходники скриптдева качает а вот обновлять их не хочет... опять же не критично скомпилилось бы хотяб так 3) Косяк был с путями скриптдева. они имели вид Mangos-Sources/scriptdev2/scriptdev2/ из-за этого там был рамс с патчингом, но вроде исправил. 4) Ну и в конце концов не компилится всё равно... конфигурация заканчивается ошибкой config.status: creating dep/include/Makefile config.status: creating dep/lib/Makefile config.status: creating dep/src/Makefile config.status: creating dep/src/g3dlite/Makefile config.status: creating dep/src/sockets/Makefile config.status: creating dep/src/zlib/Makefile config.status: creating dep/src/gsoap/Makefile config.status: creating dep/Makefile config.status: creating dep/tbb/Makefile config.status: creating doc/Doxyfile config.status: creating doc/Makefile config.status: error: cannot find input file: `Makefile.in' И вот и всё... Можно узнать где он его найти неможет или откуда скопировать... |
09.03.2010, 17:57 | #24 | |
RMDC Donator
Регистрация: 07.03.2010
Сообщений: 42
Сказал(а) спасибо: 20
Поблагодарили 12 раз(а) в 5 сообщениях
|
Цитата:
|
|
09.03.2010, 20:08 | #25 |
Гость
Сообщений: n/a
|
|
09.03.2010, 23:05 | #26 | ||
Гость
Сообщений: n/a
|
Цитата:
Цитата:
И еще измени (-3) на (-4) там уже 4 цифры в номере Последний раз редактировалось rayco; 10.03.2010 в 08:55. |
||
11.03.2010, 23:27 | #27 |
Гость
Сообщений: n/a
|
при выполнении конфигурации выдает вот это:
Код:
Configuration of MaNGOS 0.16.0 is now complete. === configuring in dep/ACE_wrappers (/mangos/objdir/dep/ACE_wrappers) configure: running /bin/sh ../../../dep/ACE_wrappers/configure --disable-option-checking '--prefix=/server/fan' '--sysconfdir=/server/fan/etc' '--enable-cli' '--enable-ra' '--datadir=/server/fan' --cache-file=/dev/null --srcdir=../../../dep/ACE_wrappers ../../../dep/ACE_wrappers/configure: line 5: .: filename argument required .: usage: . filename [arguments] configure: error: ../../../dep/ACE_wrappers/configure failed for dep/ACE_wrappers ОС Debian 5.0.4 Ядро 9385 |
13.03.2010, 05:50 | #28 |
Гость
Сообщений: n/a
|
Обновление при помощи git
А может кто-нить. написать Мануал на обновление сервера при помощи git'a под Linux? И вообще существует ли легкий способ обновления сервера?
|
14.03.2010, 12:21 | #29 | |
Новичок
Регистрация: 13.03.2010
Сообщений: 16
Сказал(а) спасибо: 6
Поблагодарили 19 раз(а) в 5 сообщениях
|
Цитата:
|
|
09.03.2010, 21:37 | #31 |
Гость
Сообщений: n/a
|
Возможно, библиотеки повреждены у тебя, можешь дать доступ по ssh? я попробую помочь.
Если есть желание пиши в л.с. Последний раз редактировалось Fer; 09.03.2010 в 21:40. |
30.03.2010, 14:58 | #32 |
Пользователь
Регистрация: 06.03.2010
Адрес: Россия->Цимлянск
Сообщений: 49
Сказал(а) спасибо: 34
Поблагодарили 4 раз(а) в 4 сообщениях
|
Замечательный рестартер. Умеет ловить краши, и заливать их на сервисы типа pastle.com. Работает как под мангосом, так и под тринити
http://trinity.elegosproject.org/#whatisit2
__________________
Богатство языка определяет широту его мысли |
07.05.2010, 15:03 | #33 |
Гость
Сообщений: n/a
|
У меня такая трабла:
Код:
make[3]: Entering directory `/server/Mangos-Sources/compile/compile-9825-/objdir/src/game' CXX AccountMgr.o In file included from ../../../src/game/BattleGround.h:24, from ../../../src/game/Group.h:24, from ../../../src/game/Player.h:30, from ../../../src/game/ObjectAccessor.h:32, from ../../../src/game/AccountMgr.cpp:21: ../../../src/game/Map.h:1:7: error: too many decimal points in number In file included from ../../../src/game/MapReference.h:23, from ../../../src/game/Player.h:34, from ../../../src/game/ObjectAccessor.h:32, from ../../../src/game/AccountMgr.cpp:21: ../../../src/game/Map.h:1:7: error: too many decimal points in number In file included from ../../../src/game/Player.h:25, from ../../../src/game/ObjectAccessor.h:32, from ../../../src/game/AccountMgr.cpp:21: ../../../src/game/Item.h:335: error: ‘unit32’ has not been declared In file included from ../../../src/game/BattleGround.h:24, from ../../../src/game/Group.h:24, from ../../../src/game/Player.h:30, from ../../../src/game/ObjectAccessor.h:32, from ../../../src/game/AccountMgr.cpp:21: ../../../src/game/Map.h:1: error: expected unqualified-id before numeric constant In file included from ../../../src/game/MapReference.h:23, from ../../../src/game/Player.h:34, from ../../../src/game/ObjectAccessor.h:32, from ../../../src/game/AccountMgr.cpp:21: ../../../src/game/Map.h:1: error: expected unqualified-id before numeric constant make[3]: *** [AccountMgr.o] Error 1 make[3]: Leaving directory `/server/Mangos-Sources/compile/compile-9825-/objdir/src/game' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/server/Mangos-Sources/compile/compile-9825-/objdir/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/server/Mangos-Sources/compile/compile-9825-/objdir' make: *** [all] Error 2 Последний раз редактировалось CyberMan; 07.05.2010 в 15:52. |
09.05.2010, 00:38 | #34 | |
Гость
Сообщений: n/a
|
Цитата:
Хм, а можете дать название аналогичных пакетов на RedHat дистрибутивах? В частности, на CentOS 5.4 |
|
09.05.2010, 00:54 | #35 | |
Пользователь
Регистрация: 07.03.2010
Адрес: Норильск
Сообщений: 51
Сказал(а) спасибо: 28
Поблагодарили 31 раз(а) в 15 сообщениях
Записей в дневнике: 3
|
Цитата:
Ну и некоторые программы идут "пачками" в пакетах, и обычно стоят уже в системе, ибо первой необходимости они. |
|
09.05.2010, 13:05 | #36 |
Гость
Сообщений: n/a
|
Кстати, нужно ещё поставить libtbb-dev, а то будет ошибка при компиле.
|
28.05.2010, 15:37 | #37 |
Гость
Сообщений: n/a
|
ремени суток, ядро под OC Linux OpenSuse 10.3 получилось собрать, ревизия 9978. Но походу дела понял, что прохлопал очень важный момент "пачканье" ядра ScriptDev2. Почему грешу на это, потому что ни один босс не имеет EventAI скрипта ... Поясните где ошибся плз ...
При этом скачивая svn-ом сорц ScriptDev2 его версия 1700, а патч в ней -> MaNGOS-9519-ScriptDev2.patch ( я так понял для 9519 ревизии ядра, и весит он 2 килобайта). Результат - при компиляции и инсталяции никаких ошибок, но в базах ни один Босс или НПС не проскриптован. И еще меня очень заинтересовала фраза Сорсы мы слили... Теперь надо их пропатчить хотя бы скриптдевом Чем в принципе нужно патчить ? (просто сведения отрывочные, кто пишет - накатываем 1, кто 50+ вливает, потерялся я ....) Плз объясните как для "жирафа". ХЕЛП !!! Последний раз редактировалось Nagano; 28.05.2010 в 16:46. |
28.05.2010, 17:17 | #38 |
Гость
Сообщений: n/a
|
Вообще руководство для случая "я в Linux новичок" крайне запутано...
Для получения работоспособного ванильного (читай, не модифицированного) ядра и скриптов достаточно применить MaNGOS-9519-ScriptDev2.patch и провести компиляцию. Описание про "patch -p1 -1 < patch.patch" и т.д. предназначено только для тех, у кого есть свои собственные патчи для ядра/SD2, которых у Вас, как я понял, не наблюдается. Теперь по поводу скриптов боссов. В creature_template есть колонка ScriptName. SD2 при инициализации регистрирует скрипты, соответственно вывод простой: если в базе скрипт указан и в SD2 он есть, то будет использоваться. EventAI в данном случае ни при чем. |
Пользователь сказал cпасибо: |
20.06.2010, 00:22 | #40 |
Гость
Сообщений: n/a
|
Код:
cd mangos patch -p1 -l < patch.patch |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
[Гайд] Компиляция MaNGOS под FreeBSD на примере 8.0-RELEASE | metacreo | Установка MaNGOS | 63 | 25.10.2018 14:40 |
[Гайд] Компиляция MaNGOS под ОС Windows | Max | Установка MaNGOS | 35 | 08.05.2013 18:56 |
[Гайд] Компиляция под Linux | stippi | Установка MaNGOS | 8 | 01.04.2011 16:40 |
[Гайд]Компиляция Mangos для CentOS | Bguser | Установка MaNGOS | 1 | 26.12.2010 18:55 |
Смена среды исполнения для mangos (Ubuntu) | deadangel | Флудильня | 7 | 18.07.2010 08:06 |