Руководство разработчика ROMP

Материал из Rosalab Wiki
Перейти к: навигация, поиск


Сборка под Linux

Собрать ROSA Media Player достаточно легко. Сборка зависит от наличия установленных пакетов Qt, wild-midi and qjson.

1) Как создать rpm-пакет
2) Компиляция
3) Изменение пути для установки программы


1. Как создать rpm-пакет


Запустите rpmbuild:

rpmbuild -tb rosa-media-player-1.6.x.tar.gz

Вы найдете собранный пакет в папке /usr/src/packages/RPMS/i586/


2. Компиляция


Для сборки ROSA Media Player необходима версия Qt 4.2 и более.

Проверьте, что установлен Qt 4 development package. Пакет может называться qt4-devel, libqt4-dev или наподобие.

Другие зависимости:

  • wildmidi-devel - для поддержки midi
  • qjson-devel - для поддержки youtube

Распакуйте исходный код, откройте консоль и войдите в папку rosa-media-player.

Введите "make":

make

Если вам не нужна поддержка midi, добавьте аргумент "no-midi-support":

make no-midi-support

Если сборка прошла успешно, вы можете установить программу с помощью команды "make install". После этого rosa-media-player будет установлен в /usr/local:

make install

Если при сборке возникла ошибка, возможно qmake использует Qt 3 вместо Qt 4.

Для решения этой проблемы можно выполнить команду (в качестве примера):

make QMAKE=qmake-qt4

или

make QMAKE=/usr/share/qt4/bin/qmake


3. Изменение пути для установки программы


По умолчанию ROSA Media Player будет установлен в папку /usr/local. Вы можете изменить папку для установки, используя PREFIX and DESTDIR.

Примеры:

make PREFIX=/usr
make PREFIX=/usr install

Выполнение этих команд позволит установить ROSA Media Player в папку /usr.

DESTDIR будет полезен для майнтейнеров.

make PREFIX=/usr
make PREFIX=/usr DESTDIR=/tmp/ install

При выполнении этих команд сборка ROSA Media Player происходит для папки /usr, но программа будет установлена в папку /tmp/usr/.


Сборка под Windows

Для сборки ROSA Media Player и инсталляционной программы должны быть установлены следующие программы (библиотеки):

Структура расположения исходных файлов должна быть следующая:

  • rosa-media-player-plugin (скачивается с https://abf.rosalinux.ru/uxteam/rosa-media-player-plugin)
    • romp (rosa-media-player скачивается с https://abf.rosalinux.ru/uxteam/ROSA_Media_Player)
    • qjson (скачивается с официального сайта)
    • rosamp-plugin (содержит исходные файлы плагина)
    • translations (содержит файлы переводов плагина)
  • ROMP-binary-artifacts
    • install-bin (содержит инсталляционную программу ROMP)
    • install-source (содержит файлы и папки, необходимые для сборки инсталляционной программы)

Сборка:

1. Собрать qjson с ключом -DCMAKE_BUILD_TYPE=Release с помощью cmake (собранную библиотеку нужно поместить в папку ROMP-binary-artifacts/install-source).

2. Собрать ROSA Media Player:

  • выполнить get_romp_version.bat (получить последнюю версию romp из spec, обновить переводы):
get_romp_version.bat
  • выполнить qmake -tp vc (для получения файла проекта MS VS2010):
qmake  -tp vc
  • собрать проект в MS VS2010 (сборка release).

3. Собрать плагин (версия release); запустить get_translations.bat (для создания файлов переводов и копирования их в инсталляционную папку):

get_translations.bat

4. Собрать инсталляционный пакет с помощью программы Inno Setup Compiler, используя инсталляционный скрипт rosa-media-player.iss.

При сборке плеера и плагина все необходимые файлы (исполняемый модуль и библиотеки) копируются в в папку ROMP-binary-artifacts/install-source. В этой папке должны находиться все необходимые файлы для сборки инсталляционного пакета - mplayer, ffmpeg, mplayer, wget и др.