Инструкция по сборке
В отличие от остальных плагинов организации ReHLDS, ReVoice использует не обёртку build.sh, а современную связку CMake (3.21+) и пресетов CMake.
Проверка требований
- CMake 3.21 или новее
- Ninja (используется пресетами Ninja Multi-Config)
- Windows: Visual Studio 2022 либо Clang
- Linux: GCC либо Clang
Зависимости Speex, SILK, Opus, rehlsdk и Metamod SDK включены в репозиторий в каталоге external/ — инициализировать подмодули git не требуется.
Клонирование репозитория
git clone https://github.com/rehlds/ReVoice.git
cd ReVoice
Сборка под Linux
cmake --preset ninja-gcc-linux
cmake --build --preset ninja-gcc-linux-release
Чтобы собрать при помощи Clang, замените gcc на clang (ninja-clang-linux). Если настраивать инструментарий самостоятельно не хочется, в репозитории есть готовый dev-контейнер (.devcontainer/, Ubuntu 24.04 с GCC и Clang).
Сборка под Windows
cmake --preset vs2022-msvc-windows
cmake --build --preset vs2022-msvc-windows-release
Чтобы собрать при помощи Clang, замените msvc на clang (vs2022-clang-windows). Можно также открыть сгенерированное решение Visual Studio сразу после шага cmake --preset.
Результат сборки
На обеих платформах получается revoice_mm.dll (Windows) либо revoice_mm_i386.so (Linux) в каталоге bin/<компилятор>-<конфигурация>/. О том, куда файл помещается на сервере, см. Установка.