История изменений
Исправление abcq, (текущая версия) :
Так там же все написано, хотя вы могли это и сами понять из ошибок сборки, make вам говорит что в файле Makefile который передается в качестве сборочного файла make на строке 106 и строке 194 происходят ошибки.
Вы должны были открыть этот Makefile и посмотреть на стоку 106 и 194. В 106 строке вы увидите вот это
@echo "Checking runtime assemblies..."
@mono --debug OpenRA.Utility.exe all --check-runtime-assemblies $(WHITELISTED_OPENRA_ASSEMBLIES) $(WHITELISTED_THIRDPARTY_ASSEMBLIES) $(WHITELISTED_CORE_ASSEMBLIES)
тут сборочный скрипт вызывает поно и пытается получить дебажную сборку OpenRA.Utility.exe вам это ничего особо не дает поэтому смотрите дальше
На стоке 194 вы обнаружите это
geoip-dependencies:
@./thirdparty/fetch-geoip-db.sh
@ $(CP) thirdparty/download/GeoLite2-Country.mmdb.gz .
а вот и ваш скриптец который находится в корне исходных текстов в папочке thirdparty который и должен скачивать GeoLite2-Country.mmdb.gz в папочку thidparty/download и потом копировать его в корень исходных тестов. Вот этот скрипт
#!/bin/sh
# Die on any error for Travis CI to automatically retry:
set -e
download_dir="${0%/*}/download"
mkdir -p "${download_dir}"
cd "${download_dir}" || exit 1
filename="GeoLite2-Country.mmdb.gz"
# Database does not exist or is older than 30 days.
if [ ! -e $filename ] || [ -n "$(find . -name $filename -mtime +30 -print)" ]; then
rm -f $filename
echo "Updating GeoIP country database from MaxMind."
if command -v curl >/dev/null 2>&1; then
curl -s -L -O http://geolite.maxmind.com/download/geoip/database/$filename
else
wget -cq http://geolite.maxmind.com/download/geoip/database/$filename
fi
fi
как и написано тут https://github.com/OpenRA/d2/issues/170 сейчас это не работает потому что теперь нет возможности по прямой ссылке скачать этот архив, т.к. maxmind.com закрыли доступ по прямой ссылке и теперь надо регистрироваться на сайте и вроде как после этого можно скачать эту базу данных. Но делатель этого мода хер ложил с прибором на поддержку своего мода и поэтому скрипт выше в том состоянии что он был и остался.
Собственно путь решения это как я вам и раньше говорил это взять актуальную версию движка openra и самостоятельно перенести сборку на него. Для начала можно просто попробовать подменить движок на актуальную версию и надеяться что все соберется без лишних разбирательств
Второй вариант это попробовать найти этот GeoLite2-Country.mmdb.gz архив в сети и подложить его в корень исходных текстов.
Третий вариант закоментировать сборку
106 @mono --debug OpenRA.Utility.exe
которая по зависимостям требует этот архив и надееться что она не особо нужна для работоспособности игры :)
Вариант четыре. Это попробовать посмотреть что из себя представляет актуальное дерево исходных кодов движка openra. И его Makefile сборки. Я уже это сделал за вас там есть следующее:
@$(INSTALL_DATA) IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP "$(DATA_INSTALL_DIR)/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP"
это скорей всего и есть эта база ip адресов и локаций расположения этих ip адресов, так же теперь скрипт скачивающий эту базу (которая доступна по прямой ссылке, кто бы мог подумать) лежит прямо в корне исходных текстов актуальной версии движка openra, скрипт называется fetch-geoip.sh и имеет следующее содержание:
#!/bin/sh
# Download the IP2Location country database for use by the game server
####
# This file must stay /bin/sh and POSIX compliant for macOS and BSD portability.
# Copy-paste the entire script into http://shellcheck.net to check.
####
# Set the working directory to the location of this script
cd "$(dirname "$0")" || exit 1
# Database does not exist or is older than 30 days.
if [ -z "$(find . -path ./IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP -mtime -30 -print)" ]; then
rm -f IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP
echo "Downloading IP2Location GeoIP database."
if command -v curl >/dev/null 2>&1; then
curl -s -L -O https://download.ip2location.com/lite/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP || echo "Warning: Download failed"
else
wget -cq https://download.ip2location.com/lite/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP || echo "Warning: Download failed"
fi
fi
он вам и скачает это архив. В общем вы можете попробовать скачать этот архив IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP и пережать его в GeoLite2-Country.mmdb.gz а потом подсунуть ручками в корень дерева исходных кодов движка openra того мода и попробовать снова запустить, но перед запуском закомментировать 194 195 строки чтобы, после этого сборка пройдет успешно и вы получите свои бинарники:
OpenRA.PostProcess -> /d2/engine/OpenRA.PostProcess.exe
OpenRA.Game -> /d2/engine/OpenRA.Game.exe
Post-processing /d2/engine/OpenRA.Game.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Mods.Common -> /d2/engine/mods/common/OpenRA.Mods.Common.dll
OpenRA.Mods.Cnc -> /d2/engine/mods/common/OpenRA.Mods.Cnc.dll
OpenRA.Utility -> /d2/engine/OpenRA.Utility.exe
Post-processing /d2/engine/OpenRA.Utility.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Server -> /d2/engine/OpenRA.Server.exe
Post-processing /d2/engine/OpenRA.Server.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Mods.D2k -> /d2/engine/mods/d2k/OpenRA.Mods.D2k.dll
OpenRA.Platforms.Default -> /d2/engine/OpenRA.Platforms.Default.dll
OpenRA.Test -> /d2/engine/OpenRA.Test.dll
и останется лишь подложить pak файлы оригинальной игры как это описано в README для мода, после этого по идее все должно работать.
Исправление abcq, :
Так там же все написано, хотя вы могли это и сами понять из ошибок сборки, make вам говорит что в файле Makefile который передается в качестве сборочного файла make на строке 106 и строке 194 происходят ошибки.
Вы должны были открыть этот Makefile и посмотреть на стоку 106 и 194. В 106 строке вы увидите вот это
@echo "Checking runtime assemblies..."
@mono --debug OpenRA.Utility.exe all --check-runtime-assemblies $(WHITELISTED_OPENRA_ASSEMBLIES) $(WHITELISTED_THIRDPARTY_ASSEMBLIES) $(WHITELISTED_CORE_ASSEMBLIES)
тут сборочный скрипт вызывает поно и пытается получить дебажную сборку OpenRA.Utility.exe вам это ничего особо не дает поэтому смотрите дальше
На стоке 194 вы обнаружите это
geoip-dependencies:
@./thirdparty/fetch-geoip-db.sh
@ $(CP) thirdparty/download/GeoLite2-Country.mmdb.gz .
а вот и ваш скриптец который находится в корне исходных текстов в папочке thirdparty который и должен скачивать GeoLite2-Country.mmdb.gz в папочку thidparty/download и потом копировать его в корень исходных тестов. Вот этот скрипт
#!/bin/sh
# Die on any error for Travis CI to automatically retry:
set -e
download_dir="${0%/*}/download"
mkdir -p "${download_dir}"
cd "${download_dir}" || exit 1
filename="GeoLite2-Country.mmdb.gz"
# Database does not exist or is older than 30 days.
if [ ! -e $filename ] || [ -n "$(find . -name $filename -mtime +30 -print)" ]; then
rm -f $filename
echo "Updating GeoIP country database from MaxMind."
if command -v curl >/dev/null 2>&1; then
curl -s -L -O http://geolite.maxmind.com/download/geoip/database/$filename
else
wget -cq http://geolite.maxmind.com/download/geoip/database/$filename
fi
fi
как и написано тут https://github.com/OpenRA/d2/issues/170 сейчас это не работает потому что теперь нет возможности по прямой ссылке скачать этот архив, т.к. maxmind.com закрыли доступ по прямой ссылке и теперь надо регистрироваться на сайте и вроде как после этого можно скачать эту базу данных. Но делатель этого мода хер ложил с прибором на поддержку своего мода и поэтому скрипт выше в том состоянии что он был и остался.
Собственно путь решения это как я вам и раньше говорил это взять актуальную версию движка openra и самостоятельно перенести сборку на него. Для начала можно просто попробовать подменить движок на актуальную версию и надеяться что все соберется без лишних разбирательств
Второй вариант это попробовать найти этот GeoLite2-Country.mmdb.gz архив в сети и подложить его в корень исходных текстов.
Третий вариант закоментировать сборку
106 @mono --debug OpenRA.Utility.exe
которая ко зависимостям требует этот архив и надеется что она не особо нужна для работоспособной игры :)
Вариант четыре. Это попробовать посмотреть что из себя представляет актуальное дерево исходных кодов движка openra. И его Makefile сборки. Я уже это сделал за вас там есть следующее:
@$(INSTALL_DATA) IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP "$(DATA_INSTALL_DIR)/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP"
это скорей всего и есть эта база ip адресов и локаций расположения этих ip адресов, так же теперь скрипт скачивающий эту базу (которая доступна по прямой ссылке, кто бы мог подумать) лежит прямо в корне исходных текстов актуальной версии движка openra, скрипт называется fetch-geoip.sh и имеет следующее содержание:
#!/bin/sh
# Download the IP2Location country database for use by the game server
####
# This file must stay /bin/sh and POSIX compliant for macOS and BSD portability.
# Copy-paste the entire script into http://shellcheck.net to check.
####
# Set the working directory to the location of this script
cd "$(dirname "$0")" || exit 1
# Database does not exist or is older than 30 days.
if [ -z "$(find . -path ./IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP -mtime -30 -print)" ]; then
rm -f IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP
echo "Downloading IP2Location GeoIP database."
if command -v curl >/dev/null 2>&1; then
curl -s -L -O https://download.ip2location.com/lite/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP || echo "Warning: Download failed"
else
wget -cq https://download.ip2location.com/lite/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP || echo "Warning: Download failed"
fi
fi
он вам и скачает это архив. В общем вы можете попробовать скачать этот архив IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP и пережать его в GeoLite2-Country.mmdb.gz а потом подсунуть ручками в корень дерева исходных кодов движка openra того мода и попробовать снова запустить, но перед запуском закомментировать 194 195 строки чтобы, после этого сборка пройдет успешно и вы получите свои бинарники:
OpenRA.PostProcess -> /d2/engine/OpenRA.PostProcess.exe
OpenRA.Game -> /d2/engine/OpenRA.Game.exe
Post-processing /d2/engine/OpenRA.Game.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Mods.Common -> /d2/engine/mods/common/OpenRA.Mods.Common.dll
OpenRA.Mods.Cnc -> /d2/engine/mods/common/OpenRA.Mods.Cnc.dll
OpenRA.Utility -> /d2/engine/OpenRA.Utility.exe
Post-processing /d2/engine/OpenRA.Utility.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Server -> /d2/engine/OpenRA.Server.exe
Post-processing /d2/engine/OpenRA.Server.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Mods.D2k -> /d2/engine/mods/d2k/OpenRA.Mods.D2k.dll
OpenRA.Platforms.Default -> /d2/engine/OpenRA.Platforms.Default.dll
OpenRA.Test -> /d2/engine/OpenRA.Test.dll
и останется лишь подложить pak файлы оригинальной игры как это описано в README для мода, после этого по идее все должно работать.
Исходная версия abcq, :
Так там же все написано, хотя вы могли это и сами понять из ошибок сборки, make вам говорит что в файле Makefile который передается в качестве сборочного файла make на строке 106 и строке 194 происходят ошибки.
Вы должны были открыть этот Makefile и посмотреть на стоку 106 и 194. В 106 строке вы увидите вот это
@echo "Checking runtime assemblies..."
@mono --debug OpenRA.Utility.exe all --check-runtime-assemblies $(WHITELISTED_OPENRA_ASSEMBLIES) $(WHITELISTED_THIRDPARTY_ASSEMBLIES) $(WHITELISTED_CORE_ASSEMBLIES)
тут сборочный скрипт вызывает поно и пытается получить дебажную сборку OpenRA.Utility.exe вам это ничего особо не дает поэтому смотрите дальше
На стоке 194 вы обнаружите это
geoip-dependencies:
@./thirdparty/fetch-geoip-db.sh
@ $(CP) thirdparty/download/GeoLite2-Country.mmdb.gz .
а вот и ваш скриптец который находится в корне исходных текстов в папочке thirdparty который и должен скачивать GeoLite2-Country.mmdb.gz в папочку thidparty/download и потом копировать его в корень исходных тестов. Вот этот скрипт
#!/bin/sh
# Die on any error for Travis CI to automatically retry:
set -e
download_dir="${0%/*}/download"
mkdir -p "${download_dir}"
cd "${download_dir}" || exit 1
filename="GeoLite2-Country.mmdb.gz"
# Database does not exist or is older than 30 days.
if [ ! -e $filename ] || [ -n "$(find . -name $filename -mtime +30 -print)" ]; then
rm -f $filename
echo "Updating GeoIP country database from MaxMind."
if command -v curl >/dev/null 2>&1; then
curl -s -L -O http://geolite.maxmind.com/download/geoip/database/$filename
else
wget -cq http://geolite.maxmind.com/download/geoip/database/$filename
fi
fi
как и написано тут https://github.com/OpenRA/d2/issues/170 сейчас это не работает потому что теперь нет возможности по прямой ссылке скачать этот архив, т.к. maxmind.com закрыли доступ по прямой ссылке и теперь надо регистрироваться на сайте и вроде как после этого можно скачать эту базу данных. Но делатель этого мода хер ложил с прибором на поддержку своего мода и поэтому скрипт выше в том состоянии что он был и остался.
Собственно путь решения это как я вам и раньше говорил это взять актуальную версию движка openra и самостоятельно перенести сборку на него. Для начала можно просто попробовать подменить движок на актуальную версию и надеяться что все соберется без лишних разбирательств
Второй вариант это попробовать найти этот GeoLite2-Country.mmdb.gz архив в сети и подложить его в корень исходных текстов.
Третий вариант закоментировать сборку
106 @mono --debug OpenRA.Utility.exe
которая ко зависимостям требует этот архив и надеется что она не особо нужна для работоспособной игры :)
Вариант четыре. Это попробовать посмотреть что из себя представляет актуальное дерево исходных кодов движка опенра. И его Makefile сборки. Я уже это сделал за вас там есть следующее:
@$(INSTALL_DATA) IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP "$(DATA_INSTALL_DIR)/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP"
это скорей всего и есть эта база ip адресов и локаций расположения этих айпиадресов, так же теперь скрипт скачивающий эту базу (которая доступна по прямой ссылке, кто бы мог подумать) лежит прямо в корне исходных текстов актуальной версии движка openra, скрипт называется fetch-geoip.sh и имеет следующее содержание:
#!/bin/sh
# Download the IP2Location country database for use by the game server
####
# This file must stay /bin/sh and POSIX compliant for macOS and BSD portability.
# Copy-paste the entire script into http://shellcheck.net to check.
####
# Set the working directory to the location of this script
cd "$(dirname "$0")" || exit 1
# Database does not exist or is older than 30 days.
if [ -z "$(find . -path ./IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP -mtime -30 -print)" ]; then
rm -f IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP
echo "Downloading IP2Location GeoIP database."
if command -v curl >/dev/null 2>&1; then
curl -s -L -O https://download.ip2location.com/lite/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP || echo "Warning: Download failed"
else
wget -cq https://download.ip2location.com/lite/IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP || echo "Warning: Download failed"
fi
fi
он вам и скачает это архив. В общем вы можете попробовать скачать этот архив IP2LOCATION-LITE-DB1.IPV6.BIN.ZIP и пережать его в GeoLite2-Country.mmdb.gz а потом подсунуть ручками в корень дерева исходных кодов движка openra того мода и попробовать снова запустить, но перед запуском закоментировать 194 195 строки чтобы, после этоно сборка пройдет успешно и вы получите свои бинарники:
OpenRA.PostProcess -> /d2/engine/OpenRA.PostProcess.exe
OpenRA.Game -> /d2/engine/OpenRA.Game.exe
Post-processing /d2/engine/OpenRA.Game.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Mods.Common -> /d2/engine/mods/common/OpenRA.Mods.Common.dll
OpenRA.Mods.Cnc -> /d2/engine/mods/common/OpenRA.Mods.Cnc.dll
OpenRA.Utility -> /d2/engine/OpenRA.Utility.exe
Post-processing /d2/engine/OpenRA.Utility.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Server -> /d2/engine/OpenRA.Server.exe
Post-processing /d2/engine/OpenRA.Server.exe
- Enabling /LARGEADDRESSAWARE
OpenRA.Mods.D2k -> /d2/engine/mods/d2k/OpenRA.Mods.D2k.dll
OpenRA.Platforms.Default -> /d2/engine/OpenRA.Platforms.Default.dll
OpenRA.Test -> /d2/engine/OpenRA.Test.dll
и останется лишь подложить pak файлы оригинальной игры как это описано в README для мода, после этого по идее все должно работать.