Бег по граблям

Я люблю бегать по граблям, в частности, натыкаясь на какую-нибудь ошибку, порой исправляю ее и забываю, как именно я ее исправил и спустя несколько месяцев (или лет) опять натыкаюсь на нее и опять начинаю думать, как же ее исправлять.

Так вот, для памяти запишу: код Виртустан-мада и Старого Зеркала плохо собирается на 64-битных системах, флаг -m32 и соответствующие библиотеки помогают не всегда. В частности, под cygwin/64 он либо не собирается либо собирается и сразу падает в корку. Ну и чорт с ним, потому как все нормально собирается на 32-разрядном Цигвине, а 32-разрядные exe нормально работают в 64-разрядной Винде.

А на 64-разрядной Ubuntu 18.04.3 мой Виртустан собрался и нормально работает.

Сборки мадов для Виндовс

Я сделал свежие сборки мадов для 64-разрядной Виндовс. Компилировал я в среде cygwin, это оказалось достаточно просто, все делается примерно как в Линуксе (то есть cmake с нужными параметрами, потом make, подробнее см. документацию в репозитории кода Былин).

Во-первых, сделал тестовую «локалку» с тремя зонами (движок для проверки зон) Былин (версия кода от 6 ноября 2019 года). Вот она. (Примерно то же самое, но немного более старое лежит на официальном сайте Былин).

А во-вторых, я сделал локалку Нового Зеркала (со всеми зонами). Вот.

Зачем можно использовать локалки: на них можно играть (это полноценный сервер), можно соло, можно с друзьями по сети. А можно использовать их для билдерства: тестировать зоны, изучать OLC и триггеры и т.п.

И снова Былины

Решил я собрать свежие Былины под Windows/cygwin. К сожалению собрать Былины по их инструкции мне не удалось. Там есть тонкость с питоном, пока мне неподдающаяся.

Зато собрал Былины без питона, это просто (питон в новых Былинах нужен только для иммовской питонной консоли)

http://prool.kharkov.org/mud/byliny-windows/exe/0/

Как собрать мад без питона? Удаляешь из Makefile упоминания файлов scripting.*

И из нескольких исходников (а частности comm.cpp) удаляешь вызовы методов, расположенных в этом файле (методы scripting:: и console::). Остальное по инструкции

Пруль

B снова о сборке кода Былин под cygwin

Иногда выскакивает непонятная ошибка про отсутствие какого-то файла pyconfig.h

Помочь может команда

export CPLUS_INCLUDE_PATH=/usr/include/python2.7

вводимая перед make (или make test). (Последние цифры в пути могут быть другими, в зависимости от установленной версии питона, нужно проверить наличие соответствующего пути)

 

И снова Былины номер ноль

Вчера я сделал новый релиз этого пакета, который нормально собирается как в Windows (cygwin), так и в Линуксах. И положил туда готовый .exe для тех, кто не умеет или не хочет сам собирать:

http://prool.kharkov.org/mud/byliny-0/

* * *

(предыстория всего этого)

Былины номер ноль

Периодически я занимаюсь сборками разных движков, в первую очередь под Windows, так как основные мадолюбители сидят именно под виндами и если и хотят запустить мад-сервер на домашнем компе (чисто для себя или и для друзей), то с линуксом дело иметь боятся. Я иду по пути наименьшего сопротивления и собираю обычно в среде cygwin, это требует минимальной правки. Как говорили в советские времена — «дешево и сердито». Так, я собрал под винду свой Виртустан мад, Зеркало, MERC, ROM и какой-то старый частично русифицированный Circle. Как говорится, дело было вечером, делать было нечего.

Среди этих сборок есть и то, что я назвал проектом Былины-0. Это выложенная на официальном сайте Былин одна из самых первых версий Былин, по сути русифицированный CircleMUD. В 2010 году я сделал виндовую сборку его и забыл. А через четыре года я опять вернулся к этому проекту и увидел, что он перестал собираться. Компьютер со старым Windows XP и старым cygwin давно разобран, а в новых версиях этот код не собирается. Похоже, это связано с переходом с gcc 3 на gcc 4-й версии. В общем я затеялся опять собирать ЭТО, попутно нашел в коде кучу мелких багов и вообще недописанных кусков (как оно вообще у меня собралось тогда?). И собрал, пока в 6-м Дебиане, дома поковыряюсь с cygwin. Файлы будут выкладываться все в том же каталоге