Сайт | Лаборатория | Форум | Wikiservia



In english

harpywar.com

Главная

Вики

Форум

Лаборатория

 Статьи
   Игры
   Настройка серверов
     PvPGN
     D2GS
     NFS: U
     Apache
     ArcEmu

   Кодинг
     .NET
     PHP

   Разное

 Проекты
   QDoom
   IRC Search
   vbreality [web]
   UTech p2p Realm [web]
   PvPGN система статистики
   Diablo 2 Launcher
   WoW Simple Launcher

 Моё
   Творчество
   Оборудование

Поиск по сайту


Хостинг и VDS, скидка при переходе
 
PvPGN (Player vs Player Game Network)
Иконки Warcraft 3 (w3xp_userselected_icon)
Создание иконок Warcraft 3
PvPGN c ладдером в Starcraft [x]
Группы консольных команд (command_groups.conf) [x]
Battle.net утилиты
Создание баннеров (ad.conf)
address_translation.conf
Иконки Starcraft [x]
Как скомпилировать исходники PvPGN 1.8.5 под Windows
Headers и библиотеки для компиляции PvPGN
Как скомпилировать исходники PvPGN 1.99 из SVN, под Windows
PvPGN и MSSQL (через ODBC)
Как установить PvPGN 1.8.5 под Linux
Установка PvPGN 1.99 на Linux
Среда для эффективной разработки PvPGN
Установка PvPGN 1.99 на LinuxСоздано: 09.01.2014
Изменено: 26.05.2014
Автор: HarpyWar

Пошаговая инструкция по установке PvPGN 1.99 на Linux (Debian/Ubuntu)
Для новичков рекомендуется ознакомиться с другой статьей, где более подробно описаны основы в Linux.

Последовательные действия

1. Закачать на сервер исходный код.

Можно из архива, можно свои. Рекомендую использовать мой git репозитарий в качестве основы - в нем есть некоторые улучшения по-сравнению с основным.
Наиболее простой способ загрузить все файлы из любого git репозитария - использовать команду "git clone".
cd /home
git clone https://github.com/pvpgn/pvpgn-server.git

После этого все файлы будут загружены в папку с названием репозитария, в этом случае в /home/pvpgn

Примечание: сперва необходимо установить пакет "git"
apt-get install git


2. Откройте путь, где расположена директория "src". Рядом с ней создайте папку "build" и перейдите в нее:
cd /home/pvpgn
mkdir build
cd build


3. Для выполнения дальнейших действий должны быть установлены следующие пакеты:
apt-get install cmake make build-essential zlib1g-dev

Для включения Lua скриптов:
apt-get install liblua5.1-0-dev

И если вам требуется поддержка MySQL, то нужно установить ещё 3 пакета:
apt-get install mysql-server mysql-client libmysqlclient-dev

cmake и make - подготавливают файлы к компиляции
build-essential - утилиты для сборки, включая компилятор c++
zlib1g-dev - заголовочные файлы библиотека zlib (требуются при компиляции)
libmysqlclient-dev - заголовочные файлы библиотека MySQL (требуются при компиляции)
mysql-server - MySQL сервер
mysql-client - MySQL консольный клиент

Можно установить все эти пакеты по отдельности, используя синтаксис "apt-get [package name]".

4. Запуск конфигурации:
cmake -D CMAKE_INSTALL_PREFIX=/usr/local/pvpgn -D WITH_MYSQL=true -D WITH_LUA=true ../

-D CMAKE_INSTALL_PREFIX=/usr/local/pvpgn - путь для установки PvPGN
-D WITH_MYSQL=true - (опционально) указывает на сборку с поддержкой MySQL
-D WITH_LUA=true - (опционально) указывает на сборку с поддержкой Lua
../ - означает относительный путь от текущей папки "build" к пути, где располагается папка с исходным кодом "src"; или можно указать прямой путь к /home/pvpgn/pvpgn

Примечение: если конфигурация завершилась с ошибкой, то иногда лучше очистить папку "build", во избежание непонятных ошибок из-за кеша

5. Запуск сборки
make

Следующая команда создает дерево папок в установочном пути и копирует туда со все конечные файлы
make install

Теперь в папке /usr/local/pvpgn есть все необходимое для работы сервера.

bin - утилиты
sbin - файлы для запуска pvpgn (bnetd, d2cs, d2dbs)
etc - конфиги
var - файлы, логи и т.п.
var/files - support файлы
var/lua - Lua скрипты
share/man - инструкция

Готово! Установка завершена.

6. (optional) В основном конфиге bnetd.conf требуется изменить переменную "storage_path", в соответствии с данными подключения к вагему MySQL серверу:
nano /usr/local/pvpgn/etc/bnetd.conf


7. (optional) Создать пустую базу данных "pvpgn" через консольный MySQL клиент:
mysql -u[user] -p[pass]
create database pvpgn;
quit


8. Запустить сервер PvPGN
/usr/local/pvpgn/sbin/bnetd


9. Изучить конец лога, и убедиться что сервер запущен
less /usr/local/pvpgn/var/bnetd.log


Распространенные ошибки при сборке и их решения

CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
apt-get install make


CMake Error: your CXX compiler: "CMAKE_CXX_COMPILER-NOTFOUND" was not found. Please set CMAKE_CXX_COMPILER to a valid compiler path or name.
apt-get install build-essential


CMake Error at cmake/Modules/FindZLIB.cmake:44 (MESSAGE):
Could NOT find z library
apt-get install zlib1g-dev


CMake Error at cmake/Modules/FindMySQL.cmake:60 (MESSAGE):
Could NOT find MySQL library
apt-get install libmysqlclient-dev


CMake Error: The source directory "XXX" does not exist.
или
CMake Error: The source directory "XXX" does not appear to contain CMakeLists.txt
Последним параметром к cmake укажите путь к директории, где содержится папка с исходниками "src" (см. в начале статьи)






[AVP] Присоединенные файлы (вирусов нет):

 Dante
19 Январь 2014, 06:40 | #368 
working in fedora?

 HarpyWar
19 Январь 2014, 17:09 | #369 
Dante, yes I guess.
There is another package manager in Fedora: "yum" instead of "apt-get". And the package names may differ from Debian.

 Dante
20 Январь 2014, 03:28 | #370 
Ok,thanks harpywar

 XOM91K
24 Январь 2014, 01:35 | #371 
http://forums.harpywar.com/viewtopic.php?pid=5784#p5784

 LyaLya
22 Март 2014, 00:08 | #380 
Опишите всё подробно про команд!

Как добавить свою команду в Пвпгн в Linux???
Например: /mute nick
или как убрать некоторые команды у операторов/модераторов без ошибок???

 nitko
12 Апрель 2014, 01:05 | #386 
compiled from git by this guide on debian 7.4 (stable, updated) few hours ago. works great, no errors. thanks for good work. spasiba!

 aleck
03 Август 2014, 19:51 | #387 
How i can give rights to a user, like admin , channel operator, etc?

 mesaj
31 Октябрь 2014, 19:28 | #390 
centos7 64bit. compiled and running.

 riverflow
15 Ноябрь 2014, 21:23 | #391 
I have just succeeded in compiling this on Mac OS X!
thanks for your work!

 Archer
02 Апрель 2015, 00:51 | #399 
Hi thank you for this guide. I was able to get it running on CentOS 7 with mysql!

I have edited my Warcraft II gateways to connect to its IP, however it does not respond. They are on the same LAN so no port issues.

What is the next step after installing and getting it running? Did i miss something?

Thanks

 xkp
15 Сентябрь 2015, 01:58 | #400 
Debian gcc 5.1.2 not compile

 ivan
27 Сентябрь 2015, 21:17 | #401 
On Ubuntu Server 15.04:
CMake Error at CMakeLists.txt:32 (message):
G++ 5.1 or higher required
Tried to update G++ to latest version, but still got the same error.

 ivan
27 Сентябрь 2015, 21:51 | #402 
Seems fixed after reboot. Probably 2 instance was started.


Есть вопросы по настройке игровых серверов? Добро пожаловать на форум!

Имя: Проверка: = 1350


© 2006—2017, HarpyWar

Любое копирование информации с этого сайта - только со ссылкой на источник.
Это в одинаковой мере распространяется на любую авторскую информацию в интернете.