Компиляция под Linux
![Icon-broom.png](/w/images/thumb/7/71/Icon-broom.png/32px-Icon-broom.png)
Для получения помощи, обратитесь к руководству по редактированию на VDC и процессу очистки на Wikipedia. Также не забудьте проверить наличие заметок, оставленных отмечающим на странице обсуждения этой статьи.
Создание Linux сборки вашего многопользовательского dedicated server или server plugin не требуется, но это повышает её шанс на использование операторами рекламных серверов.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
Для сборки на Linux требуется существующий проект Visual Studio, который преобразуется в makefile с помощью инструмента Valve vcpm
("Visual C++ Project to Make").
Получение Linux
Если вы не знаете, какую версию Linux использовать, остановитесь на Ubuntu, которая старается быть удобной для пользователя. В ней есть "программный центр", который упрощает установку пакетов, и ее можно запустить с компакт-диска, если вы хотите поэкспериментировать (но вы захотите установить ее на постоянной основе, прежде чем начать копаться в ней).
Требования
- GCC и G++ 4.2.x или ниже.
- Vprojtomake 2010 или Xerces XML parser 2.8.x
libstdc++
6libc
2.4 или выше.
Если вы используете 64-битный Linux:
ia32-libs
(или вам будет сказано, что 32-битных двоичных файлов не существует)- GCC multilib для вашего выпуска GCC.
- Убедитесь, что у вас есть 32-битная сборка Xerces, если вы не обновились до Vprojtomake 2010.
Установка/Настройка
![Icon-Bug.png](/w/images/thumb/b/b4/Icon-Bug.png/10px-Icon-Bug.png)
~(тильду)
для вашей домашней директории. Части процесса создания могут не понять её.Откройте sdk_root/linux_sdk/Makefile
. Большинство опций конфигурации здесь просты, за исключением:
MOD_CONFIG
- Эти значения должны быть взяты прямо из вашего проекта VS. Удалите все пробелы. Чтобы собрать проект 'My Server' в режиме релиза, это значение должно быть
MyServer_ReleaseWin32
. GAME_DIR
- Чтобы получить это, вам нужно загрузить dedicated server от Valve. Вам нужна игра
orangebox
. CC
,CPLUS
,CLINK
- Измените их на "gcc -m32" или "g++ -m32" с кавычками. Если сборка GCC по умолчанию в вашей системе слишком свежая, укажите более старую версию с помощью "gcc-4.2 -m32" или аналогичной; проверьте
/usr/bin
, чтобы узнать, что у вас установлено. CPP_LIB
- Эти файлы могут находиться не там, где думает Valve. Чтобы найти их, перейдите в
/usr/lib
и выполните поиск. 64-битные пользователи столкнутся с двумя версиями каждого файла; выбирайте те, что находятся в папке '32'.
- Server plugin нужна дополнительная настройка. О том как её сделать можно узнать здесь: Server_plugins#Compiling.
- Опытные GCC программисты могут быть заинтересованы в Getting the SDK to work under -Wall -Werror.
Создание
Если все настроено правильно, вы можете начать создание собственного мода, перейдя в папку linux_sdk
и запустив файл make
.
![Note.png](/w/images/thumb/c/cc/Note.png/10px-Note.png)
- Пути чувствительные к регистру на Linux.
/Multiplayer
не тоже самое что и/multiplayer
- Разделение путей на Linux осуществляется с помощью символа
/
, а не как на Windows с помощью символа\
.
Запуск
Для запуска мода выполните make install
, чтобы скопировать двоичный файл сервера в папку вашего мода, затем перейдите в папку вашего выделенного сервера и выполните ./srcds_run
с соответствующим параметром -game
.