Сборка devel-версии FlightGear
Материал из FlightGear.ru.
Сборка devel-версии FlightGear
В данной инструкции установка devel-версии FlightGear производится в каталог /opt и не затрагивает систему и установленную пакетным менеджером версию симулятора.
Сборка производится с правами обычного пользователя. Создадим директорию, в которую будет установлен FlightGear:
$ sudo -s # mkdir /opt/FlightGear # chown $SUDO_UID /opt/FlightGear # exit $
Все остальные команды следует выполнять от имени пользователя, которому принадлежит свежесозданная директория.
Содержание |
Необходимые пакеты
Это весьма примерный список:
- gcc
- g++
- make
- cmake
- automake
- autoconf
- cvs
- svn
- libxi-dev
- libgl1-mesa-dev
- libxmu6
- libxmu-dev
- libboost-dev
- libopenal-dev
Сборка plib
Скачиваем последнюю версию тут и распаковываем:
wget http://plib.sourceforge.net/dist/plib-1.8.5.tar.gz tar -xzf plib-1.8.5.tar.gz cd plib-1.8.5
Далее, собираем как обычно:
./configure --prefix=/opt/FlightGear make make install
Установка OpenSceneGraph
Полная инструкция тут
Если кратко, то:
cd /opt/FlightGear svn checkout http://www.openscenegraph.org/svn/osg/OpenSceneGraph/trunk OpenSceneGraph mkdir build.osg cd build.osg ccmake ../OpenSceneGraph
Заполняем Prefix: /opt/FlightGear и Build type: Release
Чтобы заполнить поле, подведите к нему курсор, нажмите Enter, введите нужное значение и нажмите Enter еще раз.
(Внимание! Это обязательный этап конфигурирования OSG. Иначе FlightGear соберется как Debug и будет сильно тормозить.)
Конфигурируем (С) и сохраняем (G)
make make install
Установка SimGear
Оригинальная инструкция тут
cd /opt/FlightGear cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 login CVS passwd: guest cvs -d :pserver:cvsguest@cvs.simgear.org:/var/cvs/SimGear-0.3 co source mv source simgear cd simgear ./autogen.sh ./configure --prefix=/opt/FlightGear --with-jpeg-factory make make install
Установка FlightGear
Инструкция та же
cd /opt/FlightGear cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login CVS passwd: guest cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co source mv source flightgear cd flightgear ./autogen.sh ./configure --prefix=/opt/FlightGear --with-osg=/opt/FlightGear/build.osg/ --enable-osgviewer
Поскольку /opt/FlightGear по умолчанию не входит в путь поиска библиотек, надо сделать следующее: либо export LD_LIBRARY_PATH=/opt/FlightGear/lib:$LD_LIBRARY_PATH, либо после сборки добавить строку /opt/FlightGear/lib в файл /еtс/ld.so.conf и запустить ldconfig от рута
make make install
Установка FG Data
Если вы обновляете FG Data спустя значительное время после сборки, нужно заново залогиниться
cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 login CVS passwd: guest
Всё та же инструкция
cd /opt/FlightGear cvs -d :pserver:cvsguest@cvs.flightgear.org:/var/cvs/FlightGear-0.9 co data mv data /opt/FlightGear/share/FlightGear
Если при запуске FlightGear он ругнется на отсутствие библиотек OSG, скомандуйте:
sudo ldconfig
Обновление симулятора
Чтобы быть в курсе всех изменений в девелоперской версии FlightGear, рекомендуется постоянно обновлять data и пересобирать сам FlightGear. Чтобы обновить data, войдите в данный каталог и скомандуйте:
cvs update -d -P
Аналогичная команда используется для получения обновлений исходников Simgear и FlightGear. Если желаете сэкономить время и трафик, создайте в домашнем каталоге файл .cvsrc следующего содержания:
cvs -z3 -q diff -up update -dP checkout -P rdiff -u
Для обновления исходников OSG, скомандуйте в директории с исходниками:
svn update
Следует отметить особенность системы SVN - она все хранит в двойных экземплярах. Если исходный каталог с файлами весит 30 МБ, то в SVN он будет занимать 60 МБ или даже больше.
Пересборка FlightGear и его зависимостей
Нередки случаи, когда после обновления data, в самом FG что-нибудь отваливается или он вообще перестает запускаться. Это бывает потому, что data хранит не только Scenery и модели, но и конфигурационные файлы, в том числе файлы, отвечающие за интерфейс, диалоги, внутренние свойства (properties). В тех случаях, когда разработчики вносят изменения в код FG, требующие внесения изменений в некоторые конфигурационные файлы, то они одновременно вносят изменения и в data. Теперь представьте, что вы обновили только data, а сам FG остался старый. Запустив FG вы обнаружите отсутствие каких-то текстур, нерабочий HUD или какую-то другую аномалию. Таким образом, идеальным вариантом является пересборка FG по мере обновления его кода, синхронно с data.
О том, как обновить исходники из cvs и svn написано выше. Теперь немного о том, как пересобирать FG и его зависимости. Сначала в директориях с исходниками скомандуйте:
make uninstall
Затем повторите все те действия, которые вы совершали при первой установке FG и его зависимостей.
