Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Создание сервера (https://forum.zone-game.info/forumdisplay.php?f=133)
-   -   Компиляция PvPGN из исходников с помощью Visual Studio C++ (https://forum.zone-game.info/showthread.php?t=4333)

PROGRAMMATOR 05.08.2009 13:20

Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Приветствую,

Благодаря PuShKinG, сегодня мы с вами будем компилировать эмулятор Battle.NET под названием PvPGN, который позволяет играть через интернет\локальную сеть в игры: Warcraft 3 и Diablo 2. Так как эта ветка форума относится только к первой игре, то будем компилировать именно её.

Давайте подготовимся к компиляции. Ниже напишу список нужных инструментов и файлов, которые понадобятся нам для этого. Может чего и у меня не выйдет, так как последний раз я компилировал PvPGN год назад, а может и больше. Поехали...

Цитата:

libmysql.lib и libmysql.dll необходимо взять в директории с установленным MySQL: C:\Path\MySQL\lib\opt\
На этом подготовку к компиляции PvPGN можно считать завершенной. Устанавливайте все, что скачали, и идем дальше. В папку с загруженными исходниками, распакуйте архивы, в которых содержатся библиотеки. Только обратите внимание, что бы они распаковались вместе с каталогами sbin и zlib соответственно. Вот такая должна получиться структура каталогов (рис. ниже).

http://img.zone-game.info/image-D278_4A794F66.jpg
проверьте, что бы все было как на рисунке

Если все так, то продолжаем, если же нет, то перечитывайте по новой, до момента просветления. Давайте запустим установленный нами CMake (если не появился на рабочем столе ярлык, то ищите его в Пуск - Все программы - CMake 2.6 - CMakeSetup(deprecated)). После запуска, перед вами появляется не сложный интерфейс, буквально в пару кнопок.

http://img.zone-game.info/image-E916_4A794828.jpg
все элементарно Ватсон!

В верхнее поле нас просят указать путь к исходникам, конечно же указываете тот, куда Вы загрузили с помощью TortoiseSVN проект PvPGN, например у меня это:

Цитата:

E:\pvpgn\
В нижнее поле ввода просят указать, путь к бинарникам, тут все просто, нажимаете Browse... и указываете путь куда загрузили исходники, только дописав build и нажать Enter, на вопрос о создании каталога build ответить Ok. В итоге получится вот такой путь:

Цитата:

E:\pvpgn\build
Снизу есть кнопка Configure:


Нажмите ее и перед вами появится новое окно, в котором вас просят указать, какой создать проект, выбираем Visual Studio 2008 и нажимаем Ok.


Теперь осталось дождаться окончания выполнения действий CMake. У меня этот процесс занял примерно 1 минуту. После этого вы увидите все переменные с установленными по умолчанию путями. Обратите внимание, что пути указываются для установки PvPGN, то есть он устанавливается в:

Цитата:

C:/Program Files/pvpgn/
После компиляции и установки, изменить этот путь не возможно, так что заранее продумайте, куда Вы хотите установить PvPGN, лично меня вполне устроил путь по умолчанию, так что я сразу спустился по списку в самый низ и установил все как на рисунке ниже.


После этого повторно нажмите на кнопку Configure, CMake сообщит об ошибке "не найдены библиотеки MySQL" и подсветит две новые переменные, подробнее смотрим ниже на рисунке.


В первое поле укажите путь к каталогу include (смотрите первый рисунок), а во второй укажите путь к библиотеке libmysql.lib (указать путь нужно с именем файла). Пример того, как нужно указать, показано на рисунке ниже.


После этого нажмите Configure и Ok, на этом создание проекта PvPGN под Visual Studio 2008 можно считать завершенным. Перейдите в созданный вами каталог build (напоминаю, он находится там же где исходники) и запустите файл pvpgn.sln, при этом откроется VS C++ и можем приступать к компиляции.

Сверху укажите вместо Debug - Release и справа в обозревателе решений выберите ALL_BUILD (правой клавишей - Построение). Все, компиляция началась, можно сделать чаю или кофе. Самым любопытным, вот вроде меня можно нажать снизу на вкладку Вывод, что бы следить за процессом компиляции PvPGN. Вот, пока эту строку писал, уже все скомпилировало:

Цитата:

16>bnetd - ошибок 0, предупреждений 156
========== Построение: успешно: 21, с ошибками: 0, без изменений: 1, пропущено: 0 ==========
Теперь осталось установить, для этого в Обозревателе решений выберите INSTALL (правой клавишей - Построение). Как говорилось выше, по умолчанию путь установки PvPGN указан в Program Files, теперь нам нужно скопировать вручную в каталог:

Цитата:

C:\Program Files\pvpgn\sbin\
Файлы zlibwapi.dll (E:\pvpgn\zlib\) и libmySQL.dll (E:\pvpgn\sbin\). Вот теперь он готов к настройке перед запуском, но об этом в другой статье, а пока можете сами попробовать настроить. Так сказать домашнее задание. :)

Весь материал который был использован для написания этой статьи, был взят из моей умной головы, все права принадлежат http://zone-game.info/ в прочем это всегда так. Копирование статьи, разрешено, только с указанием активной, индексируемой ссылки, если таковой нет, то пишите все сами.

PuShKinG 05.08.2009 14:52

Ответ: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Оо Спасибо, то что доктор прописал :)

PuShKinG 07.08.2009 10:19

Ответ: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
кстати, а что за папки пришли вместе с исходниками?

PROGRAMMATOR 08.08.2009 16:50

Ответ: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Первая - это файлы для сервера Diablo 2, а вторая это то, что нужно для запуска PvPGN (в папке куда вы его установили, имеется files, вот туда и нужно копировать).

PuShKinG 08.08.2009 19:21

Ответ: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Спасибо :)

wen1k 08.07.2010 23:34

Re: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Перезалейте пожалуйста ссылки если кому не лень

Добавлено через 19 часов 42 минуты
У меня какая то ошибка вышла http://img.zone-game.info/image-3E7D_4C374B70.jpg

PROGRAMMATOR 04.08.2010 18:21

Re: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Ссылки обновил и добавил пояснения касательно libmysql.
На счет ошибки - пишет не найден user32.lib, а этого говорит о том, что не установлен Windows SDK или используется урезанная версия от Visual Studio Express.

wen1k 04.08.2010 18:25

Re: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Я переустановил Visual и вроде есть Windows SDK а вот про user32.lib поподробнее бы

PROGRAMMATOR 04.08.2010 18:36

Re: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Это одна из библиотек Windows SDK, место жительства:

Цитата:

C:\Program Files\Microsoft SDKs\Windows\v6.0A\Lib\

wen1k 04.08.2010 18:49

Re: Компиляция PvPGN из исходников с помощью Visual Studio C++
 
Она у меня там есть вот http://img.zone-game.info/image-7FA8_4C598BEB.jpg. Может надо куда сунуть я не особо разбираюсь в Visual'e


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

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot