Ru-MaNGOS

Ru-MaNGOS (http://mangos.ytdb.ru/index.php)
-   Установка MaNGOS (http://mangos.ytdb.ru/forumdisplay.php?f=25)
-   -   [Гайд] Компиляция MaNGOS под Linux на примере Ubuntu (http://mangos.ytdb.ru/showthread.php?t=72)

Nagano 28.05.2010 22:38

Astellar и Neggod огромное +++!!!спасибо!!!+++ емко и лаконично, понимаю, что каждого нового новичка (сори за тавтологию) поучать все сложнее и сложнее, писать по 100 раз и тп.
Прошу не "бросать в меня тапками" за след выводы и вопросы направьте по правильному пути, желательно не .. ... :)
1) Проверил свою creature_template, заполненность указанной Astellar колонки меньше 1%, хотя как и было указано выше скачано все по инструкции в данном разделе. Но странствуя по форумам нашел такие вот рекомендации "А теперь надо пропатчить исходники мангоса, дабы ScriptDev2 собирался вместе с мангосом: %patch -p0 < src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
И еще один патч, спецом для мангоса версии 0.12 (патч предварительно необходимо перенести в корень ScriptDev: patch -p0 < ScriptDev2_1682_to_MaNGOS_0.12.patch"
Отсюда 2 вопроса
- поможет ли мне применение этого (второго, scriptDev2_1682_to_MaNGOS_0.12.patch) патча еще до компиляции в заполнении колонки ScriptName и в/для наличия нужных скриптов в SD2?
- как проверить и на каком этапе (до сборки или после) наличие нужных скриптов в SD2?
2) https://scriptdev2.svn.sourceforge.n...tname_full.sql любезно выложенный Netgod решает проблему заполнения колонки ScriptName в creature_template и остается опять таки проверить наличие этих скриптов в SD2, как это сделать ?

Astellar 28.05.2010 23:01

По поводу первого вопроса. Там же написано "спецом для мангоса версии 0.12". То есть для устаревшей версии. Применять не надо. И патч на ядро никак не влияет на заполнения базы. Никакой и никогда.

По второму - смотреть исходники SD2. Можно начать с ScriptDev2/system/ScriptLoader.cpp

Nagano 28.05.2010 23:53

Цитата:

Сообщение от Astellar (Сообщение 7566)
По поводу первого вопроса. Там же написано "спецом для мангоса версии 0.12". То есть для устаревшей версии. Применять не надо. И патч на ядро никак не влияет на заполнения базы. Никакой и никогда.

По второму - смотреть исходники SD2. Можно начать с ScriptDev2/system/ScriptLoader.cpp

Да, Вы совершенно правы ув. Astellar. В файлике ScriptLoader.cpp нашел множество знакомых имен, которые перекликаются с https://scriptdev2.svn.sourceforge.n...tname_full.sql. Теперь, благодаря Вам картина проясняется.
Но в связи с этим напрашиваются вопросы:
1) Скриптование боссов и прочей живности :) (для уровня чайника) существует только на этом этапе ? Его можно менять/дополнять только путем скачивания новых версий scriptDev2 (в моем случае 1700+) и собирая ядро заново после чего пропатчивая базу соответствующим https://scriptdev2.svn.sourceforge.n...tname_full.sql ?? Так, например, я не нашел упоминания в своих исходниках (убежден, что самых свежих версий) о всеми любимом Лорд-е Ребрад-е(http://ru.wowhead.com/npc=36612).
2) А как же быть с "пресловутой" закладочкой EventAI в столь любимой лентяями и чайниками Quice? После прочтения мануалов, касающихся данной программы, и репетиций на win-довых готовых ядрах, у меня была уверенность, что если в ней не собирается скрипт при "вычитывании" НПСа, то соответствующие базы просто не заполнены и это не НПС, а "бревно" в лучшем случае.
3) То есть например тут http://wow-mangos.megion.su/index.ph...d=14&Itemid=36 в стабильной сборке на этапе "патчинга" исходников создатель применил, как Вы сказали выше, свои собственные патчи для ядра/SD2. И именно поэтому "влезая" при помощи Quice в базы этой сборки в закладке EventAI видна четкая структура действий НПСа ?

Заранее благодарен Вам, за проявленное терпение и ответы на мои бесконечные вопросы :pardon:.

Astellar 29.05.2010 00:32

1. Да, скриптование существ, у которых есть запись в ScriptName, осуществляется путем правки/написания исходного кода. И да, при обновлении SD2 из репозитория, надо будет повторно собрать ядро.
2. EventAI для боссов не подходит, в силу крайнего разнообразия модели поведения этих самых боссов.
3. Повторю еще раз, патчи ядра/SD2 никак не могут повлиять на заполнение базы. Если создатель сборки внес изменения какие-то, то делал он это именно путем обращения к базе данных.

P.S. Не знаю, что из себя представляет Quice и как он выглядит, да и знать не хочу особо, хватает работы с базой напрямую.

vsalda 09.06.2010 16:31

Вложений: 1
Подскажите пожалуста что я не так делаю, хочу пропатчить а он мне выдаёт ето

MangMan 09.06.2010 16:40

Вы уже находитесь в папке с scriptdev2, зачем тогда вводить команду
Код:

git am src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
когда надо ввести
Код:

git am patches/MaNGOS-9519-ScriptDev2.patch

Astellar 09.06.2010 16:58

Цитата:

Сообщение от vsalda (Сообщение 8299)
Подскажите пожалуста что я не так делаю, хочу пропатчить а он мне выдаёт ето

Ребят, ну это уже не смешно, ей Богу :( Там ведь написано английскими буквами "No such file or directory". Что переводится как "Нет такого файла или каталога". А если его нету, то надо просто взять и найти.

Это мне напоминает многих моих знакомых, которые "консультироваться" временами звонят с воплями "Ааааа, оно само сломалось". Начинаешь выяснять, что случилось, и в 80% случаев выходит, что это само "пишет какое-то сообщение об ошибке". Так и хочется в этот момент крикнуть "Ну *б твою мать, ну переведи ты хоть раз это сообщение" :)

MangMan 09.06.2010 17:10

А вот такое нынешнее поколение на *nix системах.

Feel the Power 09.06.2010 18:31


Ext 19.06.2010 06:54

Проблема встала в руссификации базы.
В sql файле имеется строчка
Код:

/*!40101 SET NAMES utf8 */
и сам он сохранен в utf8. После накатки файла на базу, там вместо русских символов одни ????. Как с этим бороться, уже голову сломал:mda:
Сижу на *nix

Neggod 19.06.2010 07:07

http://ru-mangos.ru/showthread.php?t=274
Код:

/*!40101 SET NAMES utf8 */
это же коментарий...

Ext 19.06.2010 07:16

А может все таки код?? В питоне тоже кодировка указывается как комментарий и тем не менее работает.
Расскомментировал и нифига теже самые вопросы. Может из-за того, что база mangos создалась в кодировке latin по дефолту?

Neggod 19.06.2010 09:57

ALTER DATABASE `characters` DEFAULT CHARACTER SET utf8;


Michael BAG 19.06.2010 23:31

Проблема при накатке патча SD2
 
Код:

mangos@ns:~/Sources/compile/mangos$ git apply < src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
error: patch failed: configure.ac:308
error: configure.ac: patch does not apply
error: patch failed: src/bindings/Makefile.am:14
error: src/bindings/Makefile.am: patch does not apply
error: patch failed: src/mangosd/Makefile.am:40
error: src/mangosd/Makefile.am: patch does not apply

А вот при попытке "am"...

Код:

mangos@ns:~/Sources/compile/mangos$ git am src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
Applying: ScriptDev2 patch.
error: configure.ac: does not match index
error: src/bindings/Makefile.am: does not match index
error: src/mangosd/Makefile.am: does not match index
Patch failed at 0001 ScriptDev2 patch.
When you have resolved this problem run "git am --resolved".
If you would prefer to skip this patch, instead run "git am --skip".
To restore the original branch and stop patching run "git am --abort".


Что это значит, и как с этим бороться?

Пасиб.

Hantet 19.06.2010 23:32

Цитата:

Сообщение от Michael BAG (Сообщение 9163)
mangos@ns:~/Sources/compile/mangos$ git apply < src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
error: patch failed: configure.ac:308
error: configure.ac: patch does not apply
error: patch failed: src/bindings/Makefile.am:14
error: src/bindings/Makefile.am: patch does not apply
error: patch failed: src/mangosd/Makefile.am:40
error: src/mangosd/Makefile.am: patch does not apply

Что это значит, и как с этим бороться?

Пасиб.

git am < src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
Если не получится - слей заного исходники Мангоса, а заодно и SD2

Michael BAG 19.06.2010 23:34

Цитата:

Сообщение от Hantet (Сообщение 9164)
git am < src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
Если не получится - слей заного исходники Мангоса, а заодно и SD2

Про "git am" - добавил в свое исходное сообщение... Короче - тоже глуха.

Michael BAG 20.06.2010 00:03

Попытка снова закачать исходники мангоса и SD2 не решают проблему. Так что делать-то?

Feel the Power 20.06.2010 00:03

Исходники точно из-под линукса качали? Если да, то покажите эти самые строчки, на которые указывает в логе.

Michael BAG 20.06.2010 00:19

Цитата:

Сообщение от Feel the Power (Сообщение 9169)
Исходники точно из-под линукса качали? Если да, то покажите эти самые строчки, на которые указывает в логе.

Исходники ТОЧНО качаю из под ubuntu server 10.04.

:sorry2: Э немного не понял. Нужны логи утилиты git? Или svn?
Или Вам необходимо взглянуть на результат выполнения
Код:

git clone git://github.com/mangos/mangos.git
cd mangos
svn co https://scriptdev2.svn.sourceforge.net/svnroot/scriptdev2/ src/bindings/ScriptDev2/

?

Стоит отметить, что даже при упомянутых мною ошибках при накатке патча, configure.ac, src/bindings/Makefile.am и src/mangosd/Makefile.am подкорректировались согласно патчу.

Так что, думаю приступать к следующим операциям согласно доки.

Michael BAG 20.06.2010 00:22

Код:

cd mangos
patch -p1 -l < patch.patch

У меня нет файла patch.patch в исходниках... Где его взять?

Hantet 20.06.2010 00:22

Цитата:

Сообщение от Michael BAG (Сообщение 9173)
Исходники ТОЧНО качаю из под ubuntu server 10.04.

:sorry2: Э немного не понял. Нужны логи утилиты git? Или svn?
Или Вам необходимо взглянуть на результат выполнения
Код:

git clone git://github.com/mangos/mangos.git
cd mangos
svn co https://scriptdev2.svn.sourceforge.net/svnroot/scriptdev2/ src/bindings/ScriptDev2/

?

Стоит отметить, что даже при упомянутых мною ошибках при накатке патча, configure.ac, src/bindings/Makefile.am и src/mangosd/Makefile.am подкорректировались согласно патчу.

Так что, думаю приступать к следующим операциям согласно доки.

Не уверен что так бывает, ну да ладно.
Ради интереса попробуй слей и собери исходники с репо Insider42.
git clone git://github.com/insider42/mangos.git
cd mangos
git clone git://github.com/insider42/scriptdev2.git src/bindings/ScriptDev2
Собирал пару часов назад тоже на Убунте, всё в норме без ерроров.

Add:
Тот пункт, видимо, опционален. Если у тебя есть такой патч - накатываешь, нету - пропускаешь пункт и идёшь далее.

Michael BAG 20.06.2010 00:32

Цитата:

Сообщение от Hantet (Сообщение 9176)
Ради интереса попробуй слей и собери исходники с репо Insider42.
git clone git://github.com/insider42/mangos.git
cd mangos
git clone git://github.com/insider42/scriptdev2.git src/bindings/ScriptDev2
Собирал пару часов назад тоже на Убунте, всё в норме без ерроров.

Вот. Это гараздо лучше начинается. ;)
Код:

mangos@ns:~/Sources/insider42$ git clone git://github.com/insider42/mangos.git
Initialized empty Git repository in /home/mangos/Sources/insider42/mangos/.git/
remote: Counting objects: 59342, done.
remote: Compressing objects: 100% (11632/11632), done.
remote: Total 59342 (delta 48932), reused 57802 (delta 47620)
Receiving objects: 100% (59342/59342), 35.24 MiB | 313 KiB/s, done.
Resolving deltas: 100% (48932/48932), done.
Checking out files: 100% (4085/4085), done.
mangos@ns:~/Sources/insider42$ cd mangos/
mangos@ns:~/Sources/insider42/mangos$ git clone git://github.com/insider42/scriptdev2.git src/bindings/ScriptDev2
Initialized empty Git repository in /home/mangos/Sources/insider42/mangos/src/bindings/ScriptDev2/.git/
remote: Counting objects: 32579, done.
remote: Compressing objects: 100% (5845/5845), done.
remote: Total 32579 (delta 25306), reused 32220 (delta 25070)
Receiving objects: 100% (32579/32579), 7.39 MiB | 406 KiB/s, done.
Resolving deltas: 100% (25306/25306), done.
mangos@ns:~/Sources/insider42/mangos$ git am src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
Applying: ScriptDev2 patch.

А что это за "insider42"? В чем отличие? Ну... кроме того, что реп SD2 лежит в git'е.

Hantet 20.06.2010 00:38

Цитата:

Сообщение от Michael BAG (Сообщение 9179)
Вот. Это гараздо лучше начинается. ;)
Код:

mangos@ns:~/Sources/insider42$ git clone git://github.com/insider42/mangos.git
Initialized empty Git repository in /home/mangos/Sources/insider42/mangos/.git/
remote: Counting objects: 59342, done.
remote: Compressing objects: 100% (11632/11632), done.
remote: Total 59342 (delta 48932), reused 57802 (delta 47620)
Receiving objects: 100% (59342/59342), 35.24 MiB | 313 KiB/s, done.
Resolving deltas: 100% (48932/48932), done.
Checking out files: 100% (4085/4085), done.
mangos@ns:~/Sources/insider42$ cd mangos/
mangos@ns:~/Sources/insider42/mangos$ git clone git://github.com/insider42/scriptdev2.git src/bindings/ScriptDev2
Initialized empty Git repository in /home/mangos/Sources/insider42/mangos/src/bindings/ScriptDev2/.git/
remote: Counting objects: 32579, done.
remote: Compressing objects: 100% (5845/5845), done.
remote: Total 32579 (delta 25306), reused 32220 (delta 25070)
Receiving objects: 100% (32579/32579), 7.39 MiB | 406 KiB/s, done.
Resolving deltas: 100% (25306/25306), done.
mangos@ns:~/Sources/insider42/mangos$ git am src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
Applying: ScriptDev2 patch.

А что это за "insider42"? В чем отличие? Ну... кроме того, что реп SD2 лежит в git'е.

Уважаемый человек на просторах MaNGOS. Он держит свой репозиторий и помимо регулярных обновлений (с github.com/mangos/mangos) подгоняет под них хорошие патчи, многие (все?) из которых его собственные.

Feel the Power 20.06.2010 00:40

Цитата:

Сообщение от Michael BAG (Сообщение 9179)
Вот. Это гараздо лучше начинается. ;)
Код:

mangos@ns:~/Sources/insider42$ git clone git://github.com/insider42/mangos.git
Initialized empty Git repository in /home/mangos/Sources/insider42/mangos/.git/
remote: Counting objects: 59342, done.
remote: Compressing objects: 100% (11632/11632), done.
remote: Total 59342 (delta 48932), reused 57802 (delta 47620)
Receiving objects: 100% (59342/59342), 35.24 MiB | 313 KiB/s, done.
Resolving deltas: 100% (48932/48932), done.
Checking out files: 100% (4085/4085), done.
mangos@ns:~/Sources/insider42$ cd mangos/
mangos@ns:~/Sources/insider42/mangos$ git clone git://github.com/insider42/scriptdev2.git src/bindings/ScriptDev2
Initialized empty Git repository in /home/mangos/Sources/insider42/mangos/src/bindings/ScriptDev2/.git/
remote: Counting objects: 32579, done.
remote: Compressing objects: 100% (5845/5845), done.
remote: Total 32579 (delta 25306), reused 32220 (delta 25070)
Receiving objects: 100% (32579/32579), 7.39 MiB | 406 KiB/s, done.
Resolving deltas: 100% (25306/25306), done.
mangos@ns:~/Sources/insider42/mangos$ git am src/bindings/ScriptDev2/patches/MaNGOS-9519-ScriptDev2.patch
Applying: ScriptDev2 patch.

А что это за "insider42"? В чем отличие? Ну... кроме того, что реп SD2 лежит в git'е.

То были чистые исходники, это - нечистые (с некоторыми патчами).
Видимо те ошибки были из-за "глюков" свна, у меня тоже бывало пару раз, но после 2-3 раза обычно патчилось.

Michael BAG 20.06.2010 00:59

Ну и у меня, получается, патчилось... только со злостными выкриками. :)
Ну что ж... стану фанатом insider42 и попробую скомпилить его исходники. ;)

Feel the Power 20.06.2010 12:13

http://github.com/scriptdev2/scriptdev2 - зеркало чистого sd2 на гите, можете попробывать оттуда взять исходники, если хотите чистые попробывать :).

Michael BAG 20.06.2010 23:14

Исходники от insider42 откомпилировал удачно. Сервер запустил. Благодарю.
Остается только заселить Мир тварями всякими.. ;)

MangMan 21.06.2010 05:47


zergtmn 08.07.2010 17:06

На Ubuntu 10 вылазит ошибка:
Код:

.ibtoolize: AC_CONFIG_MACRO_DIR([m4]) conflicts with ACLOCAL_AMFLAGS=-I m4
autoreconf: libtoolize failed with exit status: 1

Upd: ошибка исчезла магическим образом после заливки репозитория на гитхаб и клонирования оттуда. До этого клонировал свой локальный репозиторий, в клонированном никаких изменений не было.

Saxalin 24.07.2010 12:23

Цитата:

Сообщение от Nordway (Сообщение 437)
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:

Вариант 2.
Код:

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.

Подскажите как быть ? =(


у меня тож такая же ошибка, роюсь в гугле пробую решить проблему, если получится то отпишу.

wedmak 31.07.2010 20:33

ОС ubuntu-10.04-desktop
я новичок в линух делаю все как тут сказано :sorry:
дохожу до Компиляци Конфигурация без ошибок
а вот после make
Код:

CXX    ScriptMgr.lo
  CXX    escort_ai.lo
  CXX    follower_ai.lo
../../../../src/bindings/ScriptDev2/base/follower_ai.cpp: In member function ‘bool FollowerAI::AssistPlayerInCombat(Unit*)’:
../../../../src/bindings/ScriptDev2/base/follower_ai.cpp:53: error: ‘CREATURE_TYPEFLAGS_CAN_ASSIST’ was not declared in this scope
../../../../src/bindings/ScriptDev2/base/escort_ai.cpp: In member function ‘bool npc_escortAI::AssistPlayerInCombat(Unit*)’:
../../../../src/bindings/ScriptDev2/base/escort_ai.cpp:81: error: ‘CREATURE_TYPEFLAGS_CAN_ASSIST’ was not declared in this scope
make[6]: *** [follower_ai.lo] Ошибка 1
make[6]: *** Ожидание завершения заданий...
make[6]: *** [escort_ai.lo] Ошибка 1
make[6]: Выход из каталога `/root/server/mangos/objdir/src/bindings/ScriptDev2'
make[5]: *** [all-recursive] Ошибка 1
make[5]: Выход из каталога `/root/server/mangos/objdir/src/bindings/ScriptDev2'
make[4]: *** [all] Ошибка 2
make[4]: Выход из каталога `/root/server/mangos/objdir/src/bindings/ScriptDev2'
make[3]: *** [all-recursive] Ошибка 1
make[3]: Выход из каталога `/root/server/mangos/objdir/src/bindings'
make[2]: *** [all-recursive] Ошибка 1
make[2]: Выход из каталога `/root/server/mangos/objdir/src'
make[1]: *** [all-recursive] Ошибка 1
make[1]: Выход из каталога `/root/server/mangos/objdir'
make: *** [all] Ошибка 2
root@maxi-desktop:~/server/mangos/objdir


ghostpast 31.07.2010 21:00

Цитата:

Сообщение от wedmak (Сообщение 11763)
../../../../src/bindings/ScriptDev2/base/follower_ai.cpp:53: error: ‘CREATURE_TYPEFLAGS_CAN_ASSIST’ was not declared in this scope
../../../../src/bindings/ScriptDev2/base/escort_ai.cpp: In member function ‘bool npc_escortAI::AssistPlayerInCombat(Unit*)’:
../../../../src/bindings/ScriptDev2/base/escort_ai.cpp:81: error: ‘CREATURE_TYPEFLAGS_CAN_ASSIST’ was not declared in this scope

отсутствует объявление CREATURE_TYPEFLAGS_CAN_ASSIST в файле escort_ai.cpp

xmolex 10.08.2010 14:48

создать еще пользователя user@%

Wildcdu 16.11.2010 20:32

mysql
 
посмотреть настройки мускуля и разрешить в нем удаленное подключение (по умолчанию например в Debian доступ только для локал хоста)

Aspro 24.02.2011 11:49

Код:

/bin/sh: /home/mangos/mangos/dep/ACE_wrappers/configure: Отказано в доступе make[2]: [dep/ACE_wrappers/ACE_Project-prefix/src/ACE_project-stamp/ACE_Project-configure] Ошибка 126
make[1]: [dep/ACE_wrappers/CMakeFiles/ACE_Project.dir/all] Ошибка 2
make[1]: *** Ожидание завершения заданий...

вот эта шляпа) и, если дальше будут, желательно тоже подскажите, как убить :)

NeatElves 24.02.2011 13:08

Цитата:

Отказано в доступе
Поставить доступ прав 777

Aspro 24.02.2011 13:38

find . -type f -exec chmod 777 {} \;
вот такого плана команду надо вводить?

NeatElves 24.02.2011 14:06

Да хоть все сразу, не только на файлы, а еще на каталоги можете поставить)

Инструкция по правам доступа на линуксе не имеет никакого отношения к мангосу...

Aspro 24.02.2011 14:37

помогло как не странно :) NeatElves, благодарствую за подсказку

rsa 24.02.2011 15:38

Цитата:

Сообщение от NeatElves (Сообщение 19491)
Да хоть все сразу, не только на файлы, а еще на каталоги можете поставить)

Инструкция по правам доступа на линуксе не имеет никакого отношения к мангосу...

в данном случае права доступа ни при чем. при скачке архивом у скрипта configure от встроенного ACE слетает атрибут исполняемости. раньше это было пофиг (autoreconf восстанавливал) а сейчас cmake на этом лажается. либо качать не архивом, либо чинить ручкаи.


Текущее время: 15:53. Часовой пояс GMT +3.

ru-mangos.ru - Русское сообщество MaNGOS