Эти mini-howto дают указания по установке Warsow, Quake III Arena и Quake 4 и Warsow на Ubuntu i386/amd64.
War§owИзвестно, что
Warsow, шутер от первого лица с уклоном в искусство движения и киберпанк, имеется в репозиториях Ubuntu, но далеко не самой новой версии. Поэтому для нормальной игры приходится его ставить вручную, что мы сейчас и сделаем.
Способ 1: обычный0. Если Warsow не устанавливается, а обновляется, удаляем старую версию:
sudo эрэм эрэф /usr/local/games/warsow
1. Создаём каталог ~/warsow-install для временных файлов.
2. Переходим по ссылке:
http://www.warsow.net/?page=download и качаем "Unified ZIP (Windows and Linux, x86 and x64)" в ~/warsow-install. Распаковываем его туда же.
3. Переходим в каталог ~/warsow-install/warsow_0.42_unified и удаляем из него, а так же из подкаталога libs исполняемые файлы, которые не имеют отношения к архитектуре компьютера (для Ubuntu i386 надо оставить только файлы, заканчивающиеся на .i386, для Ubuntu amd64, соответственно, только файлы с суффиксом .x86_64). Учитываем, что скрипты запуска (без расширений, называются
warsow,
wsw_server и
wswtv_server) удалять не надо.
4. Устанавливаем Warsow:
sudo mkdir /usr/local/games/warsow
cd ~/warsow-install/warsow_0.42_unified
sudo cp -R * /usr/local/games/warsow
5. Редактируем скрипты запуска, чтобы Warsow мог найти свои ресурсы:
cd /usr/local/games/warsow
sudo nano warsow
В открывшемся файле находим строку "
BINARY_DIR=" и изменяем её значение на "
BINARY_DIR=/usr/local/games/warsow"
Это действие следует повторить для файлов
wsw_server и
wswtv_server в том же каталоге.
6. Устанавливаем символические ссылки:
for TARGET in warsow wsw_server wswtv_server; do sudo ln -s /usr/local/games/warsow/$TARGET /usr/local/bin/$TARGET; done
7. На всякий случай задаём правильные права:
sudo chown -R root:root /usr/local/bin/ /usr/local/games/warsow/
sudo chmod -R 0755 /usr/local/bin/ /usr/local/games/warsow/
8. Доустанавливаем через Synaptic или apt-get библиотеки, необходимые для работы Warsow. Пока-что такая библиотека одна:
9. Удаляем временный каталог ~/warsow-install
10. Теперь игру можно запустить командой
warsow. Можно так же добавить себе соответствующий пункт в меню "Приложения".
Способ 2: джедайский (сборка из исходников)*. Выполняем шаги с 0 по 2 из первого способа.
3. Переходим в каталог ~/warsow-install/warsow_0.42_unified и удаляем из него
все исполняемые файлы и каталог libs в придачу.
4. Копируем файлы данных игры в целевой каталог:
sudo mkdir /usr/local/games/warsow
cd ~/warsow-install/warsow_0.42_unified
sudo cp -R * /usr/local/games/warsow
5. Качаем с сайта архив с исходниками (
http://www.warsow.net/?page=download --> SDK) в каталог ~/warsow-install и распаковываем его.
6. Через Synaptic или apt-get устанавливаем пакет
build-essential (если у кого-то ещё нет
).
7. Устанавливаем build-зависимости Warsow:
sudo apt-get build-dep warsow
Для этого необходимо иметь подключённые репозитории с исходными текстами. Те, кому не нравится присутствие этих пакетов в системе, могут безбоязненно их удалять после сборки Warsow.
8. Переходим в каталог с исходным кодом:
cd ~/warsow-install/warsow_0.42_sdk/warsow_0.42_src/source
9. Раз уж мы собираем свой Warsow, то грех его не оптимизировать под свой процессор. На этой странице -
http://gentoo-wiki.com/Safe_Cflags - описываются безопасные флаги для GCC под каждый более-менее распространённый процессор. Находим необходимые флаги и делаем
export CFLAGS="my_flags"
(например,
export CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer")
10. Теперь мы готовы к сборке:
make clean
make
11. Скомпилированные файлы копируем в целевой каталог:
cd ~/warsow-install/warsow_0.42_sdk/warsow_0.42_src/source/release
sudo cp -R * /usr/local/games/warsow
12. Неизвестно почему, но скрипты запуска, поставляемые в SDK, имеют формат строк Windows. Для исправления запускаем
cd /usr/local/games/warsow
sudo dos2unix warsow wsw_server wswtv_server
(
dos2unix есть в пакете
tofrodos)
*. Выполняем шаги с 5 по 10 из первого способа.
Quake III ArenaQuake III Arena доступен в исходниках и распространяется бесплатно (только сама игра, а не файлы данных, их по-прежнему надо покупать
), поэтому существует много способов его установки. Вот некоторые:
Примечание: если игра не устанавливается, а обновляется, то старую версию лучше стереть (за исключением baseq3/pak0.pk3
).
Способ 1: официальный (только для i386)
1. Подключаем диск с игрой
2. Выполняем
sudo mkdir /usr/local/games/quake3
sudo mkdir /usr/local/games/quake3/baseq3
sudo cp путь_до_диска/baseq3/pak0.pk3 /usr/local/games/quake3/baseq3
3. Загружаем официальный патч 1.32b:
http://www.idsoftware.com/games/quake/quake3-arena/index.php?game_section=updates, сохраняем его в свою домашнюю папку
4. Запускаем патч:
cd
sudo sh linuxq3apoint-1.32b-3.x86.run
5. Отвечаем на вопросы:
- Соглашаемся с лицензией
- Указываем путь (/usr/local/games/quake3)
- Указываем путь для установки символических ссылок (/usr/local/bin)
- Выбираем нужные компоненты (можно убрать, например, Dedicated server, если мы не планируем запускать выделенные сервера)
- Говорим, хотим ли мы элементы меню
6. Теперь игру можно запустить командой
quake3 или
quake3-smp (для многопроцессорных систем), а так же добавить элемент меню.
Примечание: если всё-таки требуется установить официальный Quake III Arena на 64-битной системе, то следует установить пакет
ia32-libs, потом выполнять все те же шаги, но в 4 пункте запускать
sudo linux32 sh linuxq3apoint-1.32b-3.x86.run.
Способ 2: ioquake31. Подключаем диск с игрой
2. Выполняем
sudo mkdir /usr/local/games/ioquake3
sudo mkdir /usr/local/games/ioquake3/baseq3
sudo cp путь_до_диска/baseq3/pak0.pk3 /usr/local/games/ioquake3/baseq3
3. Загружаем патч ioquake3 1.34 отсюда:
http://ioquake3.org/get-it/ и сохраняем в домашний каталог
4. Запускаем патч:
cd
LANG=C sudo sh ioquake3-1.34-rc3.run
(LANG=C для избегания кракозябров
)
5. Отвечаем на вопросы:
- Соглашаемся с лицензией, читаем README
- Указываем путь установки: /usr/local/games/ioquake3
- Соглашаемся на предложение установить символические ссылки
- Выбираем компоненты - из всех пунктов оставляем только пункт с соответствующими исполняемыми файлами
- Указываем, хотим ли мы элементы меню
6. Игру можно запустить командой
ioquake3, можно добавить элементы меню.
Способ 3: джедайский (сборка ioquake3 из исходников)*. Выполняем пункты 1-2 из второго способа.
3. Создаём каталог ~/ioquake3-install
4. Загружаем дополнительные pk3-файлы:
http://ioquake3.org/patch-data/, сохраняем и распаковываем архив в ~/ioquake3-install
5. Выполняем
cd ~/ioquake3-install/quake3-latest-pk3s
sudo cp -R * /usr/local/games/ioquake3
6. Устанавливаем пакеты
build-essential,
subversion7. Выполняем
cd ~/ioquake3-install
svn co svn://svn.icculus.org/quake3 ioquake3
8. Выбираем версию ioquake3 для сборки.
trunk - это самая последняя,
tags/1.34-rc4 - последняя стабильная. Переходим в каталог с выбранной версией:
cd ~/ioquake3-install/ioquake3/версия
9. Выбираем флаги сборки для компиляции. Рекомендуется сходить на
http://gentoo-wiki.com/Safe_Cflags и подобрать флаги под свой процессор. Выполняем
export CFLAGS="my_flags"
(например,
export CFLAGS="-march=nocona -O2 -pipe -fomit-frame-pointer")
10. Компилируем игру:
make clean
make
11. Устанавливаем получившиеся исполняемые файлы:
COPYDIR="/usr/local/games/ioquake3" sudo make copyfiles
12. Создаём скрипты запуска:
sudo nano /usr/local/bin/ioquake3
Вводим такой текст:
#!/bin/sh
cd /usr/local/games/ioquake3
./ioquake3.<архитектура> $@ &
То же самое повторяем для ioq3ded:
sudo nano /usr/local/bin/ioq3ded
#!/bin/sh
cd /usr/local/games/ioquake3
./ioq3ded.<архитектура> $@ &
Разрешаем выполнение для скриптов:
sudo chmod a+x /usr/local/bin/ioquake3 /usr/local/bin/ioq3ded
13. Удаляем ~/ioquake3-install
14. Теперь игру можно запустить командой
ioquake3.
Quake 4Quake 4 отличается тем, что недоступен в исходных кодах, что создаёт много проблем и ограничений. Однако игру всё-таки можно запустить и на i386, и на amd64.
i386:Тут всё совсем просто:
1. Как обычно, создаём каталог ~/quake4-install для временных файлов.
2. Берём диск с игрой, находим на нём game.rar и распаковываем в ~/quake4-install
3. Из получившегося каталога ~/quake4-install/game удаляем все .dll и .exe, оставляя только Docs и q4base.
4. Устанавливаем файлы данных:
sudo mkdir /usr/local/games/quake4
cd ~/quake4-install/game
sudo cp -R * /usr/local/games/quake4
5. Качаем официальный патч 1.4.2 для Linux x86 с сайта ID:
http://www.idsoftware.com/games/quake/quake4/index.php?game_section=updates и сохраняем его в ~/quake4-install
6. Запускаем патч:
cd ~/quake4-install
LANG=C sudo sh quake4-linux-1.4.2.x86.run
7.
- Читаем/соглашаемся с лицензией, читаем README, если хочется
- Как каталог установки указываем /usr/local/games/quake4
- Как путь для символических ссылок указываем /usr/local/bin
- Выбираем интересующие нас компоненты (обычно все)
- Выбираем версию игры - немецкая или не немецкая (кто-нибудь, объясните, в чём фишка )
- На предложение установить пункты меню отказываемся - практика показывает, что оно все равно не работает (по крайней мере на amd64)
8. Удаляем каталог ~/quake4-install
9. По идее установка завершена. Игру можно запустить командой
quake4 или
quake4-smp (для многопроцессорных систем). Можно добавить пункты меню.
10. Просмотр /usr/local/games/quake4 показывает, что ID почему-то поставляют свои версии libgcc, libstdc++ и libSDL. Если хочется, чтобы Quake 4 использовал библиотеки, входящие в состав Ubuntu, а не свои, можно удалить или переместить файлы
libgcc_s.so.1 и
libstdc++.so.6 из каталога /usr/local/games/quake4. С libSDL, к сожалению, такой фокус не работает (наверное, поэтому в имени libSDL стоит пометка .id.
). Следует учесть, что этот шаг выполняется, как говорится, "AT YOUR OWN RISK".
amd64:0. Устанавливаем пакет
ia32-libs*. Повторяем все пункты для i386
Всё вышесказанное проверено на Ubuntu 7.10, но должно работать и на других версиях.
Принимаются предложения по улучшению инструкций.