Гайд Компиляция rehlds на Linux. Подробный мануал на Русском языке.

FIELD LINE

Администратор
Регистрация
11 Июн 2017
Сообщения
73
Симпатии
69
Пол
Мужской
Многие задаются вопросом, как правильно скомпилить исходники rehlds, в итоге переходят к процессу компиляции, и у них не получается корректно это сделать, либо вообще не получается. В данной статье будет рассмотрено как скомпилить engine_i486.so из исходников rehlds.

Статья предназначена для Linux debian пользователей.

Шаг 1. Установка необходимых пакетов.

Сначала обновим систему:
apt-get update
apt-get upgrade
Переходим к установке необходимых пакетов для того, что бы скомпилить rehlds:

Установка явы:
apt-get install openjdk-8-jdk
После установки явы введите в терминал javac -version (если покажет версию и вообще что javac установлен, то все супер)

Установка компиляторов и необходимых к ним библиотек:
После установки GCC вводим в терминал команду gcc --version что бы узнать версию и вообще что GCC установлен.

Затем устанавливаем необходимые библиотеки для GCC:
apt-get install gcc-multilib
Затем устанавливаем g++
И набор библиотек к нему:
apt-get install g++-multilib
Шаг 2. Переходим к компиляции rehlds.

В терминале от рута вводим команду mkdir и создаем папку.
Например mkdir rehlds-compile (папка rehlds-compile)

Затем вводим в терминал следующую команду:
Код:
git clone https://github.com/dreamstalker/rehlds.git rehlds-compile
Если команду git clone не распознает, то установим его.
После того, как все скачалось, переходим в папку со скачанным содержимым:
Далее, осталось за малым. Переходим к компиляции.

Вводим в терминал, находясь в папке rehlds-compile следующую из двух команд

./gradlew --max-workers=1 -PuseGcc clean buildRelease
или так
./gradlew --max-workers=1 -PuseGcc clean buildFixes
(так компилит быстрее, первом варианте еще что то проверяет). В обоих вариантах все проходит успешно. Так же можно поменять количество workers. 1 worker равен одному потоку процессора, задействованному для компиляции.

Далее начнется компиляция. С терпением ждем.

Все будет находиться в директории /rehlds-compile/rehlds/build/binaries/ В ней будет 2 папки. Компилы проектов engine_i486.so двух вариантов, с фиксами или без. Там обозначено. Без фиксов - сильно отличается в объеме, либа меньше.

На этом компиляция rehlds engine_i486.so завершена!

Страница разработчиков с описанием на github - dreamstalker/rehlds

Источник данной статьи goldsrc.ru
 

iOS

Команда форума
Модератор
Регистрация
9 Июн 2017
Сообщения
506
Симпатии
148
Пол
Мужской
Telegram
@pogorelov_ios
Возможно ли скомпилировать regame, на gcc без фиксов?
 

Vaqtincha

aggressive
Разработчик
Скриптер
Регистрация
28 Янв 2018
Сообщения
963
Симпатии
685
Пол
Мужской
нафик это тебе нада ? или ты тоже сторонник заговора
 

FIELD LINE

Администратор
Регистрация
11 Июн 2017
Сообщения
73
Симпатии
69
Пол
Мужской
Для тех, кто хочет скомпилировать на debian 10, но не получается этого сделать, так как на этой системе версия openjdk-8-jdk не скачивается, а с другой версией процесс компиляции невозможен.

1) Ставим чистую виртуалку с debian 10.

2) Добавляем репозиторий.
nano /etc/apt/sources.list
В sources.list в отдельной строке прописываем
deb http://deb.debian.org/debian/ sid main
Сохраняем изменения.

3) Прописываем в терминал apt-get update

4) Теперь openjdk-8-jdk доступен для установки на debian 10 - apt-get install openjdk-8-jdk

5) Выполняем все шаги в статье выше (кроме обновления системы и установки openjdk, так как уже это выполнено).
 

Vaqtincha

aggressive
Разработчик
Скриптер
Регистрация
28 Янв 2018
Сообщения
963
Симпатии
685
Пол
Мужской
Одни танцы с линуксом :D
 

TeJIuK

Пользователь
Регистрация
13 Апр 2018
Сообщения
9
Симпатии
0
Лучше бы описал компиляцию ReHLDS под x86_64, а заодно и metamod-r с AMX Mod X. Почему авторы до сих пор под x86_32 выкладывают компоненты? Куда полезнее, чем всякие перекомпиляции с icc (да, это камень в огород ReAMXModX).
 

fantom

Разработчик
Регистрация
11 Июн 2017
Сообщения
426
Симпатии
293
Пол
Мужской
Если под линукс, то чем офф дока не устроила? По ней все собирается на ура

apt-get install gcc-multilib
apt-get install g++-multilib
Правда я уже и не припоминаю достаточно ли их, в любом случае можно еще lib32gcc1 доустановить (если не изменяет память)

У вас есть лицензия на icc?
 

Пацак

Пользователь
Регистрация
25 Апр 2020
Сообщения
1
Симпатии
0
метамодр вроде нормально с gcc компилится для х86
пару правок там сделать

а на х64 придётся типа портировать наверно
 
Сверху Снизу