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



По-русски

harpywar.com

The main

Wiki

Forums

Laboratory

 Items
   Games
   Servers tooling
     PvPGN
     D2GS
     NFS: U
     Apache
     ArcEmu

   Coding
     .NET
     PHP

   Miscellaneous

 Projects
   QDoom
   IRC Search
   vbreality [web]
   UTech p2p Realm [web]
   PvPGN Statistics System
   Diablo 2 Launcher
   WoW Simple Launcher

 Mine
   Creation
   Equipment

Search on site


Хостинг и VDS, скидка при переходе
 
PvPGN (Player vs Player Game Network)
Warcraft 3 icons (w3xp_userselected_icon)
Making Warcraft 3 icons
PvPGN with Starcraft ladder [x]
Console command groups (command_groups.conf) [x]
Battle.net utilits
Advertises creating (ad.conf)
address_translation.conf
Starcraft Leagues [x]
How to compile the PvPGN 1.8.5 source code under Windows
Headers and libraries that are needed to compile PvPGN
How to compile a PvPGN 1.99 from SVN in Windows
PvPGN with MSSQL (via ODBC)
How to install the PvPGN 1.8.5 under Linux
Building PvPGN 1.99 on Linux
Environment for effective development of PvPGN
Building PvPGN 1.99 on LinuxCreated: 09.01.2014
Edited: 26.05.2014
Author: HarpyWar

Advanced tutorial which describes PvPGN 1.99 installation on Linux based operation system (Debian/Ubuntu).
If you are beginner then read another article where basics in linux are described better.

Follow the detailed steps

1. Get the PvPGN 1.99 source.

I recommend my git repository with good code modifications.
Easy way to download all the files from any git repository is a command "git clone".
cd /home
git clone https://github.com/pvpgn/pvpgn-server.git

It will download files to a directory with the same name as the repository: /home/pvpgn

Note: first you have to install "git" package:
apt-get install git


2. Change current path to where "src" directory is located. Create a "build" directory here and switch to it:
cd /home/pvpgn
mkdir build
cd build


3. Make sure you are installed the following packages:
apt-get install cmake make build-essential zlib1g-dev

To enable Lua scripts:
apt-get install liblua5.1-0-dev

If you need MySQL support then install 3 more packages:
apt-get install mysql-server mysql-client libmysqlclient-dev

cmake and make - it will prepare the source code to build
build-essential - build tools including c++ compiler
zlib1g-dev - zlib source headers (required when build)
libmysqlclient-dev - MySQL source headers (required when build)
mysql-server - MySQL server daemon
mysql-client - MySQL console client

You can install them one by one using syntax "apt-get [package name]".

4. Run configuration:
cmake -D CMAKE_INSTALL_PREFIX=/usr/local/pvpgn -D WITH_MYSQL=true -D WITH_LUA=true ../

-D CMAKE_INSTALL_PREFIX=/usr/local/pvpgn - a directory where PvPGN will be installed
-D WITH_MYSQL=true - optional directive that points to build with MySQL support
-D WITH_LUA=true - optional directive that points to build with Lua support
../ - relative path from the current "build" directory; also you can set a direct path /home/pvpgn/pvpgn

Note: if the configuration failed then you should fix errors and clean the "build" directory to avoid strange errors

5. Run build
make

And then create directory tree with all the required files in the installation path
make install

Now we have complete directories in /usr/local/pvpgn:

bin - utilities
sbin - pvpgn executables (bnetd, d2cs, d2dbs)
etc - configs
var - files, logs, etc.
var/files - support files
var/lua - Lua scripts
share/man - manuals

Greetings! Installation is complete.

6. (optional) Change a variable "storage_path" according to your MySQL server credentials in the main config:
nano /usr/local/pvpgn/etc/bnetd.conf


7. (optional) Create an empty database "pvpgn" using console MySQL client:
mysql -u[user] -p[pass]
create database pvpgn;
quit


8. Start PvPGN server
/usr/local/pvpgn/sbin/bnetd


9. Examine logs and make sure the server is running
less /usr/local/pvpgn/var/bnetd.log


Common errors when building and it`s solutions

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.
or
CMake Error: The source directory "XXX" does not appear to contain CMakeLists.txt
Set last parameter according to a directory where is source code "src" (look at the beggining of the article)





[AVP] Attachment files (no viruses):

 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.


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

Name: Verify: = 3022


© 2006—2017, HarpyWar

Any copying information from this site only with reference to the source.
This equally applies to any copyright information in the Internet.